Visual С++ не может открыть файл include iostream,

Я новичок в С++. Я только начал! Я пробовал код на Visual С++ 2010 Express версии, но я получил следующее сообщение об ошибке кода.

------ Build started: Project: abc, Configuration: Debug Win32 ------
  ugo.cpp
c:\users\castle\documents\visual studio 2010\projects\abc\abc\ugo.cpp(3): fatal error C1083: Cannot open include file: 'iostream': No such file or directory
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Это код

// first.cpp -- displays a message


#include <iostream>   // a PREPROCESSOR directive

int main(void)        // function header
{             // start of a function body
  using namespace std;
  cout << "Come up and C++ me sometime.\n";  // message
  // start a new line
  cout << "Here is the total: 1000.00\n";
  cout << "Here we go!\n";
  return 0;
}

Ответ 1

Заменить

#include <iostream.h>

с

using namespace std;

#include <iostream>

Ответ 2

Некоторые вещи, которые вы должны проверить:

  • Проверьте папку include в вашей версии VS (в "C:\Program Files\Microsoft Visual Studio xx.x\VC\include" проверьте файл, который вы включаете, iostream, убедитесь, что он там).

  • Проверьте свои проекты Включить каталоги в <Project Name> > Properties > Configuration Properties > VC++ Directories > Include Directories - (это должно выглядеть так: $(VCInstallDir)include;$(VCInstallDir)atlmfc\include;$(WindowsSdkDir)include;$(FrameworkSDKDir)\include;)

  • Убедитесь, что вы выбрали правильный проект для этого кода (File > New > Project > Visual C++ > Win32 Console Application)

  • Убедитесь, что в ваших кодовых файлах нет <iostream.h>, VS не поддерживает это (в том же проекте, проверьте ваши другие файлы кода,.cpp и .h файлы для <iostream.h> и удалите его).

  • Убедитесь, что у вас не более одной функции main() в вашем файлы проекта кода (в том же проекте, проверьте свои другие файлы кода, файлы .cpp и .h для функции main() и удалите его или замените другим именем).

Некоторые вещи, с которыми вы могли бы попытаться построить:

  • Исключить using namespace std; из вашей функции main() и поместить ее после включения директивы.
  • Используйте std::cout без using namespace std;.

Ответ 3

У меня была такая же проблема в VS 2015. Он выглядит как VS 2010, а позже вам нужно включить #include "stdafx.h" во все ваши проекты.

#include "stdafx.h"
#include <iostream>
using namespace std;

Выше работали для меня. Ниже не было:

#include <iostream>
using namespace std;

Это также не удалось:

#include <iostream>
using namespace std;
#include "stdafx.h"

Ответ 4

Скорее всего, вам не хватает $(IncludePath) в свойствах → Каталоги VС++ → Включить каталоги. Добавление этого должно сделать iostream и другие видимыми снова. Вероятно, вы удалили его по ошибке при настройке своей программы.

Ответ 5

Возможно, ваш компилятор и ресурсы, установленные вокруг него, были как-то неполными. Я рекомендую повторно установить ваш компилятор: он должен работать после этого.

Ответ 6

У меня возникла эта ошибка, когда я создал консольное приложение "Пустое" в Visual Studio 2015. Я заново создал приложение, оставив флажок "Пусто", он добавил все необходимые библиотеки.

Ответ 7

Если ваши каталоги include правильно указаны в листе свойств проекта VС++ → Свойства конфигурации → Каталоги VС++- > Включить каталоги. Путь ссылается на макрос $(VC_IncludePath) В моем VS 2015 это оценивается следующим образом: "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include"

using namespace std;
#include <iostream> 

Это сделало это для меня.

Ответ 8

Microsoft Visual Studio забавна, когда вы используете установщик, вы ДОЛЖНЫ установить флажок в нескольких вариантах, чтобы обойти .netframework(несколько), чтобы сделать больше С++ вместо острых приложений, таких как параметры clr при разработке dekstop... в установщике визуальной студии.... разница - это проект консоли С++ win32 или консольный проект С++ CLR. Так в чем разница? Ну, я не буду перечислять все файлы CLR, но так как большинство хороших ядер С++ находятся в Linux... поэтому CLR позволяет обойти много окон .netframework b/c visual studio действительно была для вас для приложений в C sharp.

Вот проект консоли С++ win32!

#include "stdafx.h"
#include <iostream>
using namespace std;
int main( )
{
cout<<"Hello World"<<endl;
return 0;
}

Теперь идет проект консоли С++ CLR!

#include "stdafx.h"

using namespace System;

int main(array<System::String ^> ^args)
{
Console::WriteLine("Hello World");
return 0;
}

Обе программы делают то же самое... CLR просто выглядит более структурированной методологией перегрузки классов, поэтому Microsoft может отличить обширную библиотеку, которую вы должны ознакомиться, если это так. https://msdn.microsoft.com/en-us/library/2e6a4at9.aspx

другие вещи, которые вы узнаете из отладки, чтобы добавить для предотвращения ошибок

#ifdef _MRC_VER
#define _CRT_SECURE_NO_WARNINGS
#endif

Ответ 9

быстрое решение для небольших программ:

добавить: #include <cstdlib>

Ответ 10

    // first.cpp -- displays a message


#include <iostream>   // a PREPROCESSOR directive
using namesapce std;
int main()        // function header
{             // start of a function body
  ///using namespace std;
  cout << "Come up and C++ me sometime.\n";  // message
  // start a new line
  cout << "Here is the total: 1000.00\n";
  cout << "Here we go!\n";
  return 0;
}