Не удается открыть источник файл math h
Детали системы:
Windows 10
Visual Studio Community 2017 v.15.2 (26430.6)
— Установленная разработка рабочего стола с C ++ (Снимок экрана: Список установки )
Шаг 1: Я написал знаменитую программу Hello World на C ++.
Шаг 2: Я нажал на Построить> Построить решение.
Проблема: ‘Stdio.h’: Данный файл или каталог отсутствует. Полная ошибка:
Детали по устранению неполадок / Вещи, которые я пробовал:
- Свойства конфигурации> Каталоги VC ++
Include Directories $(VC_IncludePath);$(WindowsSDK_IncludePath); - Снимок экрана: Solution Explorer (файлы в проекте)
Код в stdafx.cpp файл:
Код в stdafx.h файл:
Другие решения
Столкнулся с проблемой пропавших без вести stdlib.h а также stdio.h (а может и больше) после установки VS2017 Community на новый компьютер и переноса решения с VS2013 на VS2017.
Сейчас мои проекты строятся без проблем.
Обратите внимание, что вам может потребоваться сделать проект стартовым проектом для ретаргетинга.
Есть три способа решить эту проблему.
Переустановите Visual Studio
Это также сработало для меня, потому что я понял, что, возможно, что-то не так с моим Windows SDK. Я использовал Windows 10, но с Windows SDK 8.1. У вас может быть и эта проблема.
шаги: Откройте установщик Visual Studio> щелкните трехстрочную строку меню> Удалить> Перезагрузите компьютер> Откройте установщик Visual Studio> Установите то, что вам нужно, но убедитесь, что вы устанавливаете только последнюю версию Windows SDK 10, а не несколько или 8.1.
У меня была похожая проблема после обновления моего VS2017. Проект построен хорошо; но много «ошибок», когда код был поднят в редакторе. Даже попробовал переустановить VS. Я смог решить эту проблему, установив для параметра «Игнорировать стандартные пути включения» значение «Да». Попытка построить решение с большим количеством ошибок. Вернулся и установил опцию на Нет. После восстановления моя проблема ушла.
Если вы не хотите использовать Windows SDK для Windows 10 (например, вы можете работать над проектом с открытым исходным кодом, решение которого не принимается вами), вы можете решить эту проблему в проекте Windows SDK 8.1 с помощью навигационный Tools -> Get Tools and Features. -> Individual Compontents tab и установка отдельных компонентов «Windows 8.1 SDK» (в составе SDK, библиотек и сред) и «Windows Universal CRT SDK» (в разделе «Компиляторы», средства сборки и среды выполнения):
У меня была такая же проблема при создании VS 2013 Project с помощью Visual Studio 2017 IDE.
Решением было установить правильный «Platformtoolset v120 (Visual Studio 2013)». Для этого должен быть установлен Windows SDK 8.1.
Если вы хотите использовать Platformtoolset v141 (Visual Studio 2017), необходимо установить Windows SDK 10.
Platformtoolset может быть выбран в диалоге свойств проекта: General -> Platformtoolset
526 просмотра
1 ответ
103 Репутация автора
Я пытаюсь использовать графическую библиотеку (SFML) для C ++, и у меня возникли проблемы. Я использую Visual Studio 2017. Я посмотрел много уроков на Youtube и получаю ту же ошибку с каждым, что пытаюсь. Я не могу найти решение, так как люди говорят «папки должны быть вместе», что я уже сделал: Вот ошибки, которые я получаю:
E1696 не может открыть исходный файл "stdafx.h" c: Users George source repos Game Game main.cpp 1
E0065 ожидал ‘;’ c: Users George source repos Game Game main.cpp 5
E1696 не может открыть исходный файл "SFML / Graphics.hpp" c: Users George source repos Game Game main.cpp 2
C1083 Невозможно открыть включаемый файл: ‘stdafx.h’: такого файла или каталога нет: c: users george source repos game game main.cpp 1
Код, который я запускаю (скопированный, с дополнительным):
Раньше в коде не было stdafx.h или std пространства имен, поэтому мне пришлось добавить их, потому что у меня были другие ошибки. Я был бы очень признателен за любую помощь. Спасибо
Решение
Вы должны правильно понимать, что такое stdafx.h, или предварительно скомпилированный заголовок. Другие вопросы или Википедия ответят на это. Во многих случаях можно избежать предварительно скомпилированного заголовка, особенно если ваш проект небольшой и с небольшими зависимостями. В вашем случае, как вы, вероятно, начали с шаблона проекта, он был использован для включения Windows.h только для _TCHAR макро.
Затем предварительно скомпилированный заголовок обычно является файлом проекта в мире Visual Studio, поэтому:
Во-вторых: нежелательно включать предварительно скомпилированный заголовок в ваши собственные заголовки, чтобы не загромождать пространство имен другого источника, который может использовать ваш код в качестве библиотеки, поэтому полностью удалите его включение в vector.h ,
Шаг 1. Восстановите компьютер до последней точки восстановления, «моментального снимка» или образа резервной копии, которые предшествуют появлению ошибки.
Чтобы начать восстановление системы (Windows XP, Vista, 7, 8 и 10):
Если на этапе 1 не удается устранить ошибку math.h, перейдите к шагу 2 ниже.
Шаг 3. Выполните обновление Windows.
Если ни один из предыдущих трех шагов по устранению неполадок не разрешил проблему, можно попробовать более агрессивный подход (примечание: не рекомендуется пользователям ПК начального уровня), загрузив и заменив соответствующую версию файла math.h. Мы храним полную базу данных файлов math.h со 100%-ной гарантией отсутствия вредоносного программного обеспечения для любой применимой версии C-Free . Чтобы загрузить и правильно заменить файл, выполните следующие действия:
Windows 10: C:\Program Files\MATLAB\R2019b\sys\lcc\include\
Windows 10: C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\tr1\
Windows 10: C:\Program Files (x86)\C-Free 5\mingw\include\
Windows 10: C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\include\
Windows 10: C:\Program Files\MATLAB\R2019b\polyspace\verifier\cxx\include\include-libc\
Показать на 2 каталогов больше +
Windows 10: C:\Program Files\MATLAB\R2019b\polyspace\verifier\cxx\include\include-libcxx\
Windows 10: C:\Program Files\MATLAB\R2019b\sys\lcc64\lcc64\include64\
Если этот последний шаг оказался безрезультативным и ошибка по-прежнему не устранена, единственно возможным вариантом остается выполнение чистой установки Windows 10.
СОВЕТ ОТ СПЕЦИАЛИСТА: Мы должны подчеркнуть, что переустановка Windows является достаточно длительной и сложной задачей для решения проблем, связанных с math.h. Во избежание потери данных следует убедиться, что перед началом процесса вы создали резервные копии всех важных документов, изображений, установщиков программного обеспечения и других персональных данных. Если вы в настоящее время не создаете резервных копий своих данных, вам необходимо сделать это немедленно.
Общие ошибки выполнения math.h
Ошибки файла math.h часто возникают на этапе запуска C-Free, но также могут возникать во время работы программы. Эти типы ошибок H также известны как «ошибки выполнения», поскольку они возникают во время выполнения C-Free. К числу наиболее распространенных ошибок выполнения math.h относятся:
- Не удается найти math.h.
- math.h — ошибка.
- Не удалось загрузить math.h.
- Ошибка при загрузке math.h.
- Не удалось зарегистрировать math.h / Не удается зарегистрировать math.h.
- Ошибка выполнения — math.h.
- Файл math.h отсутствует или поврежден.
Программа: C:\Program Files (x86)\C-Free 5\mingw\include\math.h
Среда выполнения получила запрос от этого приложения, чтобы прекратить его необычным способом.
Для получения дополнительной информации обратитесь в службу поддержки приложения.
В большинстве случаев причинами ошибок в H являются отсутствующие или поврежденные файлы. Файл math.h может отсутствовать из-за случайного удаления, быть удаленным другой программой как общий файл (общий с C-Free) или быть удаленным в результате заражения вредоносным программным обеспечением. Кроме того, повреждение файла math.h может быть вызвано отключением питания при загрузке C-Free, сбоем системы при загрузке или сохранении math.h, наличием плохих секторов на запоминающем устройстве (обычно это основной жесткий диск) или заражением вредоносным программным обеспечением. Таким образом, крайне важно, чтобы антивирус постоянно поддерживался в актуальном состоянии и регулярно проводил сканирование системы.
Шаг 2. Если вы недавно установили приложение C-Free (или схожее программное обеспечение), удалите его, затем попробуйте переустановить C-Free.
Чтобы удалить программное обеспечение C-Free, выполните следующие инструкции (Windows XP, Vista, 7, 8 и 10):
После полного удаления приложения следует перезагрузить ПК и заново установить C-Free.
Если на этапе 2 также не удается устранить ошибку math.h, перейдите к шагу 3 ниже.
Ответы (1)
103 Репутация автора
Разобрался несколько дней назад, но забыл опубликовать, как я это исправил. Я скачал 32-битную версию SFML. В свойствах необходимо убедиться, что в нем написано: «Active (win32)» или что-то в этом роде. У меня был мой на "x64", поэтому он не работал. Надеюсь, что это помогло кому-то еще с той же проблемой 🙂
Я пытаюсь использовать графическую библиотеку (SFML) для C ++, и у меня возникли проблемы. Я использую Visual Studio 2017 Я наблюдал много учебников Youtube, и получить ту же ошибку с каждым я стараюсь. Я не могу найти решение, как люди говорят «папки должны быть вместе» , которые я уже сделал: Вот ошибки я получаю:
E1696 не может открыть исходный файл stdafx.h C: Users George источник Repos Game Game main.cpp 1
E0065 ожидается «;» C: Users George источник Repos Game Game main.cpp 5
E1696 исходный файл не может открыть SFML / Graphics.hpp C: Users George источник Repos Game Game main.cpp 2
C1083 Невозможно открыть файл включать: ‘stdafx.h’: Нет такого файла или каталога C: Users ДЖОРДЖ источник Repos игры игры main.cpp 1
Код я бег (скопировано с дополнительным):
Перед тем, код не имеют stdafx.h или патезрасе, так что я должен был добавить их, потому что у меня были другие ошибки. Я бы очень признателен за любую помощь. благодаря
Когда я скомпилировал эту программу (из C ++ Programming Language 4th edition):
Это дало мне эти ошибки:
Решение
Возникла та же проблема с переносом проекта с VS2013 на VS2017,
Исправлено: измените «Свойства-> Общие-> Версия Windows SDK» на 10
Другие решения
Просто включите windows.h вместо stdfax или создайте чистый проект без шаблона.
Есть два решения для этого.
Решение номер один:
1. Воссоздать проект. При создании проекта убедитесь, что предварительно скомпилированный заголовок проверен (Настройки приложения … *** Не проверять пустой проект)
Решение номер два:
1. Создайте stdafx.h и stdafx.cpp в своем проекте
2 Щелкните правой кнопкой мыши по проекту -> свойства -> C / C ++ -> предварительно скомпилированные заголовки
3. выберите предварительно скомпилированный заголовок для создания (/ Yc)
4. Восстановите решение
Напишите мне, если у вас возникнут проблемы.
Вы можете решить эту проблему, добавив «$ (ProjectDir)» (или там, где находится stdafx.h) в список каталогов в разделе «Проект» — «Свойства» -> «Свойства конфигурации» -> «C / C ++ ->« Общие »->« Дополнительные каталоги включения ».
Просто пробежался по учебному коду Visual Studio и столкнулся с похожей проблемой.
Я работал с математикой.H без каких либо проблем. Теперь я использую внешнюю библиотеку, которая сама имеет файл с именем math.h , но который включает в себя < cmath>.
добавление этой библиотеки в мой проект (или даже просто добавление каталога include, не касаясь кода) теперь генерирует тонны ошибок из < cmath>:
C:Program FilesMicrosoft Visual Studio 8VCincludecmath (18): ошибка C2039: 'acosf': не является членом "глобального пространства имен"
C:Program FilesMicrosoft Visual Studio 8VCincludecmath (18): ошибка C2873: 'acosf': символ не может использоваться в объявлении using
C:Program FilesMicrosoft Visual Studio 8VCincludecmath (18): ошибка C2039: 'asinf': не является членом "глобального пространства имен"
C:Program FilesMicrosoft Visual Studio 8VCincludecmath (18): ошибка C2873: "asinf": символ не может использоваться в объявлении using
Я не понимаю, почему это происходит. Я использую Visual Studio 2005 и смотрю в интернете, кажется, что эта проблема решена под VS 2008. Тем не менее, я хотел бы остаться на VS 2005.
в том числе using namespace std; везде, или изменение порядка моих включений, похоже, ничего не меняет. Определение _STD_BEGIN решает ошибку, но производит столько же в < xlocinfo>.
как это можно решить?
Я не уверен, что правильно прочитал Ваш вопрос, но кажется странным, что библиотека отправит свою собственную математику.H-файл.
возможно, вы должны поместить родительский каталог в свой путь включения, чтобы может быть включен без конфликта с вашим компилятором ?
такая же проблема существует в VC 10. Я думаю, что включает в себя math.h но вместо правильного, который поставляется с VC, он использует тот, который создан в пользовательском проекте (с различным содержанием, конечно).
решение: никогда не используйте файл с именем math.h в вашем проекте. (Или исправьте std где-нибудь).
проблема, вероятно, в смешивании библиотек C с соглашениями c++. Например:
это прекрасно компилируется, тогда как:
это создает большое количество ложных ошибок.
просто чтобы запутать вопрос:
Это также компилируется, поскольку он может быть включен только один раз (в первый раз).
будет работать, тогда как:
вы можете также получите аналогичные проблемы, включив заголовки C++ в A *.файл c, а не a *.файл cpp.
Я уверен, что другое подобное смешивание C и C++ может привести к аналогичным проблемам.
(1) согласно Microsoft, c2873 означает;
'symbol': символ не может использоваться в объявлении using В директиве using отсутствует ключевое слово namespace. Это заставляет компилятор неправильно интерпретировать код как объявление using, а не директиву using.
(2) также, когда у меня был C2873 с C2039 (я пытался объединить CEF3 и Cinder), каким-то образом я обошел обе ошибки, изменив свойства - >свойства конфигурации - >C / C++ - >код Поколение;
включить минимальное перестроение: да (/Gm), включить исключение C++: да(/EHsc), включить связывание на уровне функций: пусто
Я пытаюсь создать решение в Visual Studio Community 2017, но я продолжаю получать ошибку"не удается открыть файл include: 'stdio.h' ". Я прочитал несколько подобных вопросов, но все еще не могу решить эту проблему. Похоже на С stdio.h файл вызывается в stdafx.h. Ниже приведены более подробные сведения. Есть предложения? (Я еще не могу вставлять изображения, поэтому, пожалуйста, нажмите на ссылки для скриншотов.)
подробности: Windows 10
Сообщество Visual Studio 2017 V.15.2 (26430.6)
-- Установленная разработка рабочего стола с C++ (скриншот: список установка)
Шаг 1: Я написал знаменитую программу Hello World на C++.
Шаг 2: Я нажал на Build > Build Solution.
: 'С stdio.h': нет такого файла или каталога. Полная Ошибка:
детали устранения неполадок / вещи, которые я пробовал:
- свойства конфигурации > каталоги VC++
Include Directories $(VC_IncludePath);$(WindowsSDK_IncludePath); - скриншот: Обозреватель решений (файлы в проекте)
код stdafx.cpp:
код stdafx.h:
столкнулся с проблемой отсутствует stdlib.h и stdio.h (и, возможно, больше) после установки сообщества VS2017 на новый компьютер и переноса решения с VS2013 на VS2017.
теперь мои проекты строят без проблемы.
обратите внимание,что вам может потребоваться сделать проект стартовым проектом для переориентации.
существует три способа решить эту проблему.
Переустановите Visual Studio
Это также сработало для меня, потому что я понял, что, возможно, что-то не так с моим Windows SDK. Я использовал Windows 10, но с Windows SDK 8.1. Вы можете иметь эту проблему.
действия: открыть установщик Visual Studio > нажмите на трехстрочную строку меню > Удалить > перезагрузить компьютер > открыть установщик Visual Studio > Установите то, что вы хотите, но убедитесь, что вы устанавливаете только последнюю версию Windows SDK 10, а не несколько или 8.1.
на случай, если вы не хотите поднимать Windows SDK до Windows 10 (например, вы можете работать над проектом с открытым исходным кодом, где решение не ваше), вы можете решить эту проблему в проекте Windows SDK 8.1, перейдя Tools -> Get Tools and Features. -> Individual Compontents tab и установка отдельных компонентов "Windows 8.1 SDK" (под SDK, библиотеками и фреймворками) и "Windows Universal CRT SDK" (под Comiplers, инструментами сборки и временем выполнения):
У меня была аналогичная проблема после обновления моего VS2017. Проект построен хорошо, но много ошибок, когда код был воспитан в Редакторе. Даже попытался переустановить VS. Я смог решить его, установив параметр "игнорировать стандартные пути включения" в Yes. Попытка построить решение с большим количеством ошибок. Вернулся и установил параметр нет. После восстановления моя проблема исчезла.
У меня была та же проблема с созданием проекта VS 2013 с Visual Studio 2017 IDE. Решением было установить правильный " Platformtoolset v120 (Visual Studio 2013). Для этого должен быть установлен Windows SDK 8.1. Если вы хотите использовать Platformtoolset v141 (Visual Studio 2017), должен быть Windows SDK 10. Platformtoolset можно выбрать в диалоговом окне свойств проекта: общие - > Platformtoolset
Файл math.h, также известный как файл C/C++/Objective-C Header, был создан компанией Program Arts для разработки C-Free 5.0 Pro. Файлы H относятся к категории типов файлов Разработчик (C/C++/Objective-C Header).
Первая версия math.h для Orwell Dev-C++ 5.11 увидела свет 04/27/2015 в Windows 10. Последней версией файла для C-Free 5.0 Pro является v5.0 Pro, выпущенная 01/04/2010.
Продолжайте читать, чтобы найти загрузку правильной версии файла math.h (бесплатно), подробные сведения о файле и порядок устранения неполадок, возникших с файлом H.
Совместимость с Windows 10, 8, 7, Vista, XP и 2000
Средняя оценка пользователей
Сведения о разработчике и ПО | |
---|---|
Программа: | C-Free 5.0 Pro |
Разработчик: | Program Arts |
Программное обеспечение: | C-Free |
Версия ПО: | 5.0 Pro |
Сведения о файле | |
---|---|
Размер файла (байты): | 24363 |
Дата первоначального файла: | 11/22/2019 |
Дата последнего файла: | 12/31/2019 |
Информация о файле | Описание |
---|---|
Размер файла: | 24 kB |
Дата и время изменения файла: | 2019:12:31 10:41:03+00:00 |
✻ Фрагменты данных файлов предоставлены участником Exiftool (Phil Harvey) и распространяются под лицензией Perl Artistic.
Читайте также: