Remkomplekty.ru

IT Новости из мира ПК
4 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Ошибка c1010 c

Ошибка c1010 c

Ситхи не пройдут!

Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: нет
Всего: 52

#ifndef AGROUP_H
#define AGROUP_H

aGroup();
aGroup* getLastGroup();

private:
aGroup* next;
aGroup* prev;
aGroup* child;
aGroup* parent;
>;

aGroup::aGroup()
<
next = 0;
prev = 0;
parent = 0;
child = 0;
>

aGroup* aGroup::getLastGroup()
<
return next;
>

Ситхи не пройдут!

Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: нет
Всего: 52

Опытный

Профиль
Группа: Awaiting Authorisation
Сообщений: 671
Регистрация: 6.5.2006

Репутация: 6
Всего: 29

Error Message
unexpected end of file while looking for precompiled header. Did you forget to add ‘#include name’ to your source?

Confused Почему я получаю ошибку C1010?

Я пытаюсь создать программу, где main читает список имен учеников из файла (roster.txt) и вставляет все имена в список в порядке возрастания. Это список списка полного класса (notCheckedIN). Отсюда я прочитаю всех студентов, которые пришли, чтобы написать экзамены, каждый чек будет передавать свое имя в другой список (в порядке возрастания), который называется настоящим.

Конечный продукт notCheckedIN будет содержать список всех тех студентов, которые не пишут экзамен, и настоящий будет содержать список всех студентов, которые написали экзамен

Я не могу избавиться от ошибки C1010: фатальная ошибка C1010: неожиданный конец файла при поиске предварительно скомпилированного заголовка. Вы забыли добавить ‘#include «stdafx.h» в свой источник?

Есть ли способ избавиться от этой ошибки? Когда я включил «stdafx.h», я получил следующие 32 ошибки (что не имеет для меня смысла, потому что я ссылался на свое руководство о том, как использовать метод класса — все выглядит как a.ok.)

3 ответа

1 Решение Pavel Minaev [2010-05-13 02:12:00]

Вы получаете ошибку, потому что ваш проект настроен на использование предварительно скомпилированного заголовка с именем stdafx.h (который является настройкой по умолчанию для нового непустого проекта VС++). См. здесь для инструкции о том, как включить или выключить это (в разделе «Чтобы установить этот параметр компилятора в среде разработки Visual Studio» ).

Что касается ошибок, которые вы получаете с этим — ну, во-первых, вы using namespace std в своем заголовочном файле, но не содержат заголовков, которые определяют что-либо из этого пространства имен. Вы должны #include стандартные заголовки для всех типов, которые вы используете в своем заголовке — , например.

О, и это действительно должно быть #include (и такое же для всех других стандартных заголовков), а не «iostream» . Последний, как правило, работает, но он определяется реализацией, и в большинстве реализаций это означает «сначала искать в текущем каталоге».

Первые вещи

В качестве общего совета всегда старайтесь использовать то, что у вас уже есть, и знать. STL богатый с tools, чтобы решить именно такие проблемы. Повторно используйте беспощадно, крадите код, как нет завтра. Таким образом вы получите быстрее, лучше, сильнее, более сексуальные результаты.

Быстрое решение

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

Правильное решение

Если вы не можете полагаться на сортируемый файл реестра, вам придется его сортировать, и это означает, что вам нужно будет загрузить его в память.

Взятие Peek на результат

Вы можете отобразить результирующий список участвующих в регистрации (или отсутствующих) студентов:

Я предлагаю уничтожить ваш код и начать все заново.

Вот предложения:
1. Используйте стандартные библиотечные функции и структуры.
Не пишите обертки вокруг них. Например, нет необходимости в методе OpenFile . Это просто делает программу более трудной для чтения, тратит ваше время и раздражает свинью.

2. Используйте угловые скобки, > , вокруг стандартных заголовков.
Угол скобки подсказывают компилятору сначала поиск в каталогах «система» или «компилятор».

3. Прочитайте данные, затем выполните сортировку.
Прочтите все свои данные в контейнер , затем отсортируйте контейнер. Сортировка после каждой строки отнимает компьютерное время и раздражает свинью.

4. Предпочитают префикс std функций с помощью std .
Например, std::cout вместо cout . Ах, но вы говорите: «Я могу просто включить using namespace std; «. Да, но это открывает двери, открытые для всего в пространстве имен std . Другим смягченным решением является идентификация каждой функции std с пространством имен: using std::cout . Не сохраняйте идентификаторы пространства имен.

Читать еще:  Ошибка необъявленный идентификатор

5. Предпочитайте EXIT_SUCCESS и EXIT_FAILURE.
Стандартные значения для возврата из main : EXIT_SUCCESS и EXIT_FAILURE . Они определены в .

6. Передача потоков на ваш объект Методы печати Это позволит вам отправлять выходные данные в файл или консоль без изменения объектного кода. Хорошим примером является отслеживание вывода. Направьте вывод в файл, чтобы он не исчез (например, запись в консоль).

7. Научитесь использовать итераторы и алгоритмы
Стандартные контейнеры поддерживают итераторы. Вы можете легко распечатать содержимое std::list или std::vector с помощью std::copy и итераторов. Алгоритм std::sort можно применять к контейнерам с помощью итераторов (кроме тех контейнеров, которые уже имеют методы сортировки).

8. Держите его простым
Держите свою программу как можно проще, но не проще. Простые программы имеют меньше ошибок и работают быстрее, чем большие и сложные программы (и у них меньше шансов досадить свинью).

«Никогда не учите свинью петь, она тратит ваше время и раздражает свинью». — Старая шутка
«Все должно быть как можно проще, но не проще». — перефразируя Альберта Эйнштейна.

Ошибка c1010 c

Answered by:

Question

i included an vb dll into vc++. When i compiled i am getting this error.

fatal error C1010: unexpected end of file while looking for precompiled header directive in the .c file produced from the idl file.

i included comdef.h and header file produced by midl compiler to the source file. i had the dll file in the same directory of vc++ project folder. Any thing need to be set here ?

Answers

Produced from the idl file? Thats not possible.

You defined your project to use precompiled header files. So your c file or cpp files must include the file that is defined for precompilation at the top of it.

Usually #include «stdafx.h» must be placed into your cpp file.

If you want to include the c file created form the idl. You can either include it into obne of your files, or you remove the options to use precompiled headers for this specific source file.

Thank you Mr. Martin,

Now i got after setting the precompiled headers off.

It is in Project-> Settings->C/C++->Category->Precompiled headers->not using precompiled headers. Thanks once again.

All replies

Produced from the idl file? Thats not possible.

You defined your project to use precompiled header files. So your c file or cpp files must include the file that is defined for precompilation at the top of it.

Usually #include «stdafx.h» must be placed into your cpp file.

If you want to include the c file created form the idl. You can either include it into obne of your files, or you remove the options to use precompiled headers for this specific source file.

Thank you Mr. Martin,

Now i got after setting the precompiled headers off.

It is in Project-> Settings->C/C++->Category->Precompiled headers->not using precompiled headers. Thanks once again.

Hi, I’m a beginer to VC++. I wrote the following code. When compils it it shows «fatal error C1010: unexpected end of file while looking for precompiled header directive». when I included the stdafx.h it shows 3 erros where as 1 before. I tried all the headerfile setting under project->settings->c/c++,but it doesnot work. I’m using visual studio 6.0. Sir please help me.
Thanks in advance.

int_stdcall WinMain(
HINSTANCE hInstancs,
HINSTANCE hPrevInstance,
LPSTR lpszCmdLine,
int nCmdShow)
<
MessageBox(0,»Hello»,»Hello»,0);
return(0);
>

C1010 ошибка c pch h

Я компилирую следующий код, но получаю ошибку компиляции в Visual Studio, которую не могу понять.

«wordcount.cpp (57): фатальная ошибка C1010: неожиданный конец файла при поиске предварительно скомпилированного заголовка. Вы забыли добавить ‘#include» stdafx.h «‘ в исходный код?»

Я не верю, что мне нужен заголовочный файл для запуска этого кода. Спасибо за всю вашу помощь заранее.

Решение

Отключить предварительно скомпилированные заголовки:

задавать Precompiled Header в «Not Using Precompiled Header» ,

Другие решения

Первая строка каждого исходного файла вашего проекта должна быть следующей:

Визит Вот чтобы понять Предварительно скомпилированные заголовки

Создать новый «Пустой проектMsgstr «, добавьте ваш Cpp файл в новый проект, удалите строку, содержащую stdafx.

Проект больше не нуждается в stdafx. Он добавляется автоматически при создании проектов с установленными шаблонами.

непредвиденный конец файла при поиске предкомпилированного заголовка. unexpected end of file while looking for precompiled header. Вы забыли добавить имя«#include» в источник? Did you forget to add ‘#include name‘ to your source?

Читать еще:  Ошибка dxgi error device hung

Примечания Remarks

Включаемый файл, указанный параметром /Yu , отсутствует в файле исходного кода. An include file specified by /Yu isn’t listed in the source file. Этот параметр включен по умолчанию во многих типах проектов C++ Visual Studio. This option is enabled by default in many Visual Studio C++ project types. Файл включения по умолчанию, заданный этим параметром, — PCH. hили stdafx. h в Visual Studio 2017 и более ранних версий. The default include file specified by this option is pch.h, or stdafx.h in Visual Studio 2017 and earlier.

В среде Visual Studio используйте один из следующих методов, чтобы устранить эту ошибку: In the Visual Studio environment, use one of the following methods to resolve this error:

Убедитесь, что вы случайно не удалили, не переименовали или удалили файл заголовка PCH. h или исходный файл PCH. cpp из текущего проекта. Make sure you haven’t inadvertently deleted, renamed, or removed the pch.h header file or pch.cpp source file from the current project. (В более старых проектах эти файлы могут называться stdafx. h и stdafx. cpp.) (In older projects, these files may be named stdafx.h and stdafx.cpp.)

Убедитесь, что заголовочный файл PCH. h или stdafx. h включен перед любыми другими директивами кода или препроцессора в исходных файлах. Make sure the pch.h or stdafx.h header file is included before any other code or preprocessor directives in your source files. (В Visual Studio этот заголовочный файл задается свойством проекта файла предкомпилированного заголовка .) (In Visual Studio, this header file is specified by the Precompiled Header File project property.)

Вы можете отключить использование предкомпилированного заголовка. You can turn off precompiled header use. Если отключить предварительно скомпилированные заголовки, это может серьезно повлиять на производительность сборки. If you turn off precompiled headers, it may severely impact build performance.

Отключение предкомпилированных заголовков To turn off precompiled headers

Чтобы отключить использование предкомпилированного заголовка в проекте, выполните следующие действия. To turn off precompiled header use in a project, follow these steps:

В окне Обозреватель решений щелкните правой кнопкой мыши имя проекта и выберите пункт свойства , чтобы открыть диалоговое окно страницы свойств проекта. In the Solution Explorer window, right-click the project name, and then choose Properties to open the project Property Pages dialog.

В раскрывающемся списке Конфигурация выберите все конфигурации. In the Configuration drop-down, select All Configurations.

Выберите страницу свойств Свойства > конфигурацииCC++/ > Предкомпилированные заголовки . Select the Configuration properties > C/C++ > Precompiled Headers property page.

В списке свойств выберите раскрывающийся список для свойства предкомпилированного заголовка , а затем выберите вариант не использовать предкомпилированные заголовки. In the property list, select the drop-down for the Precompiled Header property, and then choose Not Using Precompiled Headers. Выберите ОК для сохранения внесенных изменений. Choose OK to save your changes.

При компилировании этого кода:

fatal error C1010: непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву «#include «pch.h»» в источник.

Почему так – непонятно. Все библиотеки подключил. (Работал в VS)

Закрыт по причине того, что не по теме участниками user7860670, 0xdb, aleksandr barakin, Эникейщик, Eugene Krivenja 21 янв в 16:21 .

Похоже, этот вопрос не соответствует тематике сайта. Те, кто, голосовал за его закрытие, указывали следующие причины:

  • «Вопрос вызван проблемой, которая больше не воспроизводится, или опечаткой. Хотя похожие вопросы могут быть уместны на этом сайте, решение для этого вопроса вряд ли поможет будущим посетителям. Обычно можно избежать подобных вопросов написанием и исследованием минимальной программы для воспроизведения проблемы до публикации вопроса.» – aleksandr barakin, Эникейщик, Eugene Krivenja
  • «Вопросы с просьбами помочь с отладкой («почему этот код не работает?») должны включать желаемое поведение, конкретную проблему или ошибку и минимальный код для её воспроизведения прямо в вопросе. Вопросы без явного описания проблемы бесполезны для остальных посетителей. См. Как создать минимальный, самодостаточный и воспроизводимый пример.» – user7860670, 0xdb

Если вопрос можно переформулировать согласно правилам, изложенным в справке, отредактируйте его.

Error c1010 непредвиденный конец файла

Хотите улучшить этот вопрос? Переформулируйте вопрос, чтобы он соответствовал тематике «Stack Overflow на русском».

Читать еще:  Как исправить ошибку в напечатанном тексте

Закрыт 12 месяцев назад .

При компилировании этого кода:

fatal error C1010: непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву «#include «pch.h»» в источник.

Почему так — непонятно. Все библиотеки подключил. (Работал в VS)

1 ответ 1

Если вы не используете предварительно скомпилированные заголовки в своем проекте, установите для свойства Создать / Использовать предварительно скомпилированные заголовки исходных файлов значение Не использовать предварительно скомпилированные заголовки. Чтобы установить этот параметр компилятора, выполните следующие действия:

На панели «Обозреватель решений» проекта щелкните правой кнопкой мыши имя проекта и выберите «Свойства».

На левой панели щелкните папку C / C ++.

Щелкните по узлу «Предварительно скомпилированные заголовки».

На правой панели щелкните «Создать / использовать предварительно
скомпилированный заголовок», а затем нажмите «Не использовать
предварительно скомпилированные заголовки».

Здравствуйте, имеется следующий код:

Однако при выполнении выдает ошибку:

c:usersoksource
eposconsoleapplication4consoleapplication4consoleapplication4.cpp(15): fatal error C1010: непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву «#include «stdafx.h»» в источник.

Добавляю #include «stdafx.h», все равно выдает ошибку:

1>c:usersoksource
eposconsoleapplication4consoleapplication4consoleapplication4.cpp(12): error C2065: cout: необъявленный идентификатор 1>c:usersoksource
eposconsoleapplication4consoleapplication4consoleapplication4.cpp(12): error C2065: endl: необъявленный идентификатор 1>c:usersoksource
eposconsoleapplication4consoleapplication4consoleapplication4.cpp(13): error C2065: cout: необъявленный идентификатор 1>c:usersoksource
eposconsoleapplication4consoleapplication4consoleapplication4.cpp(13): error C2065: endl: необъявленный идентификатор

непредвиденный конец файла при поиске предкомпилированного заголовка. unexpected end of file while looking for precompiled header. Вы забыли добавить имя«#include» в источник? Did you forget to add ‘#include name‘ to your source?

Примечания Remarks

Включаемый файл, указанный параметром /Yu , отсутствует в файле исходного кода. An include file specified by /Yu isn’t listed in the source file. Этот параметр включен по умолчанию во многих типах проектов C++ Visual Studio. This option is enabled by default in many Visual Studio C++ project types. Файл включения по умолчанию, заданный этим параметром, — PCH. hили stdafx. h в Visual Studio 2017 и более ранних версий. The default include file specified by this option is pch.h, or stdafx.h in Visual Studio 2017 and earlier.

В среде Visual Studio используйте один из следующих методов, чтобы устранить эту ошибку: In the Visual Studio environment, use one of the following methods to resolve this error:

Убедитесь, что вы случайно не удалили, не переименовали или удалили файл заголовка PCH. h или исходный файл PCH. cpp из текущего проекта. Make sure you haven’t inadvertently deleted, renamed, or removed the pch.h header file or pch.cpp source file from the current project. (В более старых проектах эти файлы могут называться stdafx. h и stdafx. cpp.) (In older projects, these files may be named stdafx.h and stdafx.cpp.)

Убедитесь, что заголовочный файл PCH. h или stdafx. h включен перед любыми другими директивами кода или препроцессора в исходных файлах. Make sure the pch.h or stdafx.h header file is included before any other code or preprocessor directives in your source files. (В Visual Studio этот заголовочный файл задается свойством проекта файла предкомпилированного заголовка .) (In Visual Studio, this header file is specified by the Precompiled Header File project property.)

Вы можете отключить использование предкомпилированного заголовка. You can turn off precompiled header use. Если отключить предварительно скомпилированные заголовки, это может серьезно повлиять на производительность сборки. If you turn off precompiled headers, it may severely impact build performance.

Отключение предкомпилированных заголовков To turn off precompiled headers

Чтобы отключить использование предкомпилированного заголовка в проекте, выполните следующие действия. To turn off precompiled header use in a project, follow these steps:

В окне Обозреватель решений щелкните правой кнопкой мыши имя проекта и выберите пункт свойства , чтобы открыть диалоговое окно страницы свойств проекта. In the Solution Explorer window, right-click the project name, and then choose Properties to open the project Property Pages dialog.

В раскрывающемся списке Конфигурация выберите все конфигурации. In the Configuration drop-down, select All Configurations.

Выберите страницу свойств Свойства > конфигурацииCC++/ > Предкомпилированные заголовки . Select the Configuration properties > C/C++ > Precompiled Headers property page.

В списке свойств выберите раскрывающийся список для свойства предкомпилированного заголовка , а затем выберите вариант не использовать предкомпилированные заголовки. In the property list, select the drop-down for the Precompiled Header property, and then choose Not Using Precompiled Headers. Выберите ОК для сохранения внесенных изменений. Choose OK to save your changes.

Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector
×
×