Форум программистов, компьютерный форум CyberForum.ru

Поменять 2 переменные. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ For_each http://www.cyberforum.ru/cpp-beginners/thread91989.html
С помощью for_each, найти колличество иксов в массиве |{xi|xi<3}| (Visual C++ 2005)
C++ GUI, технологии Здравствуйте. Подскажите мне пожалуйста какую-нибудь хорошую IDE для с++. Либо хорошую визуальную библиотеку. Просто нужно писать быстрые и эффективные программы. Заранее спасибо. П.С. гугл не помог Добавлено через 11 минут Присматриваюсь к qt. Скажите хороший выбор? http://www.cyberforum.ru/cpp-beginners/thread91976.html
объект C++
Что является объектом в программе
Подскажите как воспользоваться функцией. C++
Здрасте. В книжке Джесс Либерти "Освой самостоятельно С++ за 21 день", 3е издание, на странице 159 есть пример программы работы с классами. Программа рабочая, но в ней есть мне не понятная функция, которая в книжке не описана. В примере программы эта функция не используется, но раз уж она там указана хотелось бы ей воспользоваться. Но я не понимаю как, подскажите плизз... Как с помощью функции...
C++ Дан одномерный массив. Расположить ненулевые элементы по убыванию http://www.cyberforum.ru/cpp-beginners/thread91923.html
Дан одномерный массив. Расположить ненулевые элементы по убыванию. Использовать алгоритм вставки. Все сложность в том, что-бы нули остались на том же месте, т.е. при сортировки их трогать не надо.
C++ Вывод степени Как можно вывести степень на экран? У меня задание: Дано а. За четыре операции получить а^10 "^" - Возведение в степень подробнее

Показать сообщение отдельно
alkagolik
 Аватар для alkagolik
1510 / 616 / 79
Регистрация: 15.07.2011
Сообщений: 3,552
12.10.2012, 03:41     Поменять 2 переменные.
silent_1991, может и не оптимальнее, но для нонешнего компиля уже разницы нет. т.е. оптимизация с помощью битовых операций вместо арифметических (как писали бородатые олдфаги) сегодня не актуальна. Инструментарий умный, железо развито. Ну вот наглядный пример.
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
~/samples$ cat foo.c 
#include <stdio.h>
 
int main () {
    
    volatile int x = 10, y = 5;
    int i, j, k;
 
    for (i = 0; i < 10000; ++i)
        for (j = 0; j < 1000; ++j)
            for (k = 0; k < 1000; ++k) {
                x ^= y;
                y ^= x;
                x ^= y;
            }
 
    return 0;
}
~/samples$ clang -O2 foo.c 
~/samples$ time ./a.out 
 
real    0m56.307s
user    0m56.212s
sys 0m0.000s
~/samples$ cat foo.c 
#include <stdio.h>
 
int main () {
    
    volatile int x = 10, y = 5;
    int i, j, k;
 
    for (i = 0; i < 10000; ++i)
        for (j = 0; j < 1000; ++j)
            for (k = 0; k < 1000; ++k) {
                x += y;
                y = x - y;
                x -= y;
            }
 
    return 0;
}
~/samples$ clang -O2 foo.c 
~/samples$ time ./a.out 
 
real    0m55.967s
user    0m55.871s
sys 0m0.000s
~/samples$
 
Текущее время: 17:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru