Проблемы с Visual Studio

333
16 июля 2017, 12:08

Учился раньше на NetBeans. Решил попробовать один из самых известных компиляторов. Хотел написать простейшую программу, и выводит ошибку. Библиотеку #include <iostream> подключил.
Почему происходит ошибка?

P.S. Без "stdafx" все еще хуже. И я не видел в учебниках, что нужно эту библиотеку подключать.

Answer 1

У вас есть некоторый пробел по фундаментальным понятиям С++, таким как препроцессор и директива #include в частности.

Директива #include как правило служит для включения заголовочных файлов. Эти файлы могут содержать определения функций, условия компиляции программы под ту или иную платформу, наборы констант и т.д. Поэтому называть любой файл в кавычках после #include библиотекой некорректно. Более подробно можно почитать тут: http://www.cyberforum.ru/blogs/18334/blog100.html и тут: https://msdn.microsoft.com/ru-ru/library/36k2cdd4.aspx

Stdafx.h это специализированный заголовочный файл присущий только для visual studio, о его назначении можно почитать тут: https://habrahabr.ru/company/pvs-studio/blog/227521/

В вашем случае вы по незнанию допустили ошибку включив "iostream" перед "stdafx.h", это всегда приводит к ошибкам компиляции. Заголовочный файл "stdafx.h" должен включаться в .c/.cpp файл самым первым.

Сохраняйте спокойствие, программирование не всегда просто и понятно, не стесняйтесь гуглить "что такое stdafx.h". Все когда-то начинали и были в схожей ситуации, когда хочется бить клавиатурой по монитору и кричать "какого *** ты не работаешь". P.S. Для visual studio советую поставить аддон Visual Assist, который значительно упрощает написание кода.

READ ALSO
undefined reference to `__imp_WSAStartup&#39;

undefined reference to `__imp_WSAStartup'

Что нужно добавить в CMakeList чтобы подключить Ws2_32lib?

286
Можно ли по параметрам драйвера камеры определить снимает ли она в перевёрнутом режиме, или нет?

Можно ли по параметрам драйвера камеры определить снимает ли она в перевёрнутом режиме, или нет?

Некоторые веб-камеры выдают перевёрнутые кадры, как правило из-за кривых драйверов

247
Использование функции getche()

Использование функции getche()

Пытаюсь добиться от программы, чтобы она подсчитывала количество букв и словVisual Studio выводит ошибку, указывая на getche()

237
Условие с присваиванием

Условие с присваиванием

Программа выводит количество букв и словПочему, если ch = _getche() вынести из условия цикла в его тело, то в cout нужно указывать не chcount a (chcount - 1)?

201