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

Почему нельзя подставлять переменные в выражения #if #else? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ В массиве все четные элементы заменить максимальным http://www.cyberforum.ru/cpp-beginners/thread1130253.html
В одномерном массиве все четные элементы заменить максимальным и отсортировать элементы массива по возрастанию.
C++ Поменять местами минимальный и максимальный элемент в каждом столбце матрицы Дано матрицу размера 5 x 10. Превратить матрицу, поменяв местами минимальный и максимальный элемент в каждом столбце. http://www.cyberforum.ru/cpp-beginners/thread1130252.html
Найти средние арифметические значения элементов каждой строки матрицы C++
Задать матрицу произвольным способом. Найти средние арифметические значения элементов каждой строки.
Найти количество элементов превышающих среднее арифметическое всех элементов массива C++
Дано одномерный массив из 15 целых чисел. Найти количество элементов превышающих среднее арифметическое всех элементов массива.
C++ Cколько раз встречаются числа с 4 одинаковыми цифрами http://www.cyberforum.ru/cpp-beginners/thread1130224.html
Здравствуйте.Мне нужна помощь. Для всех шестизначных натуральных чисел посчитать сколько раз встречаются числа, в записи которых присутсвует 4 одинаковые цифры. Вот что получилось. #include <iostream> #include <math.h> using namespace std; void main (void)
C++ Подсчет количества букв в файле, их кодирование и расшифровка Здравствуйте. Мне нужно составить программу, которая подсчитает количество каждой буквы в файле input.txt (в этом файле находится некоторый текст) и запишет полученные числа в файл file.txt. Это должно быть оформлено следующим образом: А - 2 Б - 5 В - 4 Я - 3 После текст, находящийся в файле input.txt, нужно закодировать и записать в file.txt. Так же программа должна уметь декодировать шифр,... подробнее

Показать сообщение отдельно
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
26.03.2014, 15:11     Почему нельзя подставлять переменные в выражения #if #else?
Кроме того, сама возможность изменить переменную означает, что делать так всё равно нельзя:
C++
1
2
3
4
5
6
7
int a=20;
a+=200;
#if a<100
std::cout<<"less"<<std::endl;
#enlse
std::cout<<"more"<<std::endl;
#endif
, хотя перед строкой #if a<100 a уже стала равна 220, но на этапе компиляции она равна 20, в результате будет скомпилировано
C++
1
2
3
int a=20;
a+=200;
std::cout<<"less"<<std::endl;
, а должно быть
C++
1
2
3
int a=20;
a+=200;
std::cout<<"more"<<std::endl;
.
 
Текущее время: 09:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru