Visual Studio 코드, #"Add include path to settings" 라고 하는 포함
Visual Studio Code에서 C/C++를 빌드하려고 합니다.C/C++ 및 관련된 모든 확장을 설치했습니다.
#include <stdio.h>
int main() {
printf("Test C now\n");
return 0;
}
하지만 녹색 선이 있어요#include <stdio.h>
"설정에 포함 경로를 추가합니다." 라고 하다.c_cpp_properties.json은 c_cpp_properties.json입니다.
다음 구성에서 include paths를 추가하려면 어떻게 해야 합니까?
"configurations": [
{
"name": "Mac",
"includePath": ["/usr/include"]
}
]
Google에서 제외되는 모든 사용자를 위해 VSCode 1.40(2019)에 대한 수정 사항은 다음과 같습니다.
글로벌 설정을 엽니다.json : [ File ]> [ Preferences ]> [ Settings ]
그런 다음 '사용자' 탭을 선택하고 '내선번호' 섹션을 열고 'C/C++'를 클릭합니다.그런 다음 '설정에서 편집'이 나타날 때까지 오른쪽 패널을 스크롤합니다.json' 버튼.
"C_Cpp.default.includePath" 입니다.여기에 제공된 코드는 내 시스템(Windows 7)에서 가져온 것입니다.패스의 할 수 이러한 라이브러리 패스는 해 주세요.YOUR USERNAME
윈도) 이름)에 합니다.
info : ( ) :.같은 개 않습니다.VSCode는 동일한 항목에 대해 여러 정의를 내리는 것을 좋아하지 않습니다.나는 그것을 로 해결했다."C_Cpp.intelliSenseEngine": "Tag Parser"
)
settings.json은 arduino 또는 includePath와는 관계가 없습니다.따라 하면 안 돼...
설정에 추가할 JSON 섹션.json:
"C_Cpp.default.includePath": [
"C:/Program Files (x86)/Arduino/libraries/**",
"C:/Program Files (x86)/Arduino/hardware/arduino/avr/cores/arduino/**",
"C:/Program Files (x86)/Arduino/hardware/tools/avr/avr/include/**",
"C:/Program Files (x86)/Arduino/hardware/tools/avr/lib/gcc/avr/5.4.0/include/**",
"C:/Program Files (x86)/Arduino/hardware/arduino/avr/variants/standard/**",
"C:/Users/<YOUR USERNAME>/.platformio/packages/framework-arduinoavr/**",
"C:/Users/<YOUR USERNAME>/Documents/Arduino/libraries/**",
"${workspaceFolder}/libraries/**",
"${workspaceFolder}/**"
],
"C_Cpp.intelliSenseEngine": "Tag Parser"
이 상황에 대한 좀 더 최근의 견해입니다.2018년 C++ 확장에 의해, 의 설정에 다른 옵션이 추가되었습니다.c_cpp_properties.json
파일
compilerPath
임의)(「」) 프로젝트를 빌드하기 위해 사용하는 컴파일러의 절대 경로입니다.확장자는 컴파일러에 문의하여 IntelliSense에서 사용할 시스템 포함 경로 및 기본 정의를 결정합니다.
는, 「 」입니다.includePath
IntelliSense는 컴파일러를 사용하여 시스템이 경로를 포함하는지 확인하기 때문에 필요하지 않습니다.
원래,
다음 구성에서 include paths를 추가하려면 어떻게 해야 합니까?
리스트는 문자열 배열이기 때문에 include 경로를 추가하면 다음과 같습니다.
"configurations": [
{
"name": "Mac",
"includePath": ["/usr/local/include",
"/path/to/additional/includes",
"/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include"
]
}
]
출처: cpptools 블로그 2016년 3월 31일.
링크된 소스에는 Win32 구성 형식을 나타내는 gif가 있지만 다른 소스에도 동일하게 적용됩니다.
위의 샘플에는 Xcode가 설치되어 있는 경우의 SDK(OSX 10.11) 경로가 포함되어 있습니다.
주의: 인크루드 경로가 변경되면 업데이트에 시간이 걸릴 수 있습니다.
여기서 cpptools 확장을 찾을 수 있습니다.
VSCode의 C++ 언어 지원에 대한 자세한 내용은 여기를 참조하십시오.
(논의에서) 보존을 위해 C++ 파일 또는 C 파일을 컴파일 및 실행하기 위한 tasks.json 파일의 내용에 대한 기본적인 스니펫을 다음에 나타냅니다. 따옴표는 ""을 사용하여 ).\"
셸이 러너로 사용되므로 컴파일이 가능합니다.clang...
예: ★★★★★★★★★★★★★★)&& ./a.out
)를 참조해 주세요.또한 tasks.json이 로컬워크스페이스(디렉토리 .vscode 아래)에 「존재」하는 것을 전제로 하고 있습니다.지원되는 변수 등 task.json에 대한 자세한 내용은 여기를 참조하십시오.
C++의 경우
{
"version": "0.1.0",
"isShellCommand": true,
"taskName": "GenericBuild",
"showOutput": "always",
"command": "sh",
"suppressTaskName": false,
"args": ["-c", "clang++ -std=c++14 -Wall -Wextra -pedantic -pthread \"${file}\" && ./a.out"]
}
C의 경우
{
"version": "0.1.0",
"isShellCommand": true,
"taskName": "GenericBuild",
"showOutput": "always",
"command": "sh",
"suppressTaskName": false,
"args": ["-c", "clang -std=c11 -Wall -Wextra -pedantic -pthread \"${file}\" && ./a.out"] // command arguments...
}
Xcode 대신 명령줄 도구만 사용하는 Mac 사용자의 경우/Library/Developer/CommandLineTools
렉 : ( : : 。
"configurations": [{
"name": "Mac",
"includePath": [
"/usr/local/include",
// others, e.g.: "/usr/local/opt/ncurses/include",
"/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include",
"${workspaceFolder}/**"
]
}]
다른 버전의 명령줄 도구가 설치되어 있는 경우 경로를 조정해야 할 수 있습니다.
주의: 다음 파일을 열거나 생성할 수도 있습니다.
c_cpp_properties.json
명령어 팔레트(⌘pP)에서 명령어를 사용하여 파일을 만듭니다.
사용자 설정에서 다음을 추가합니다.
"C_Cpp.default.includePath":["path1","path2"]
이 답변은 늦을지도 모르지만, 저는 우연히 문제를 해결했습니다.c_cpp_properties.json 파일은 다음과 같습니다.
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/**",
"/usr/include/c++/5.4.0/",
"usr/local/include/",
"usr/include/"
],
"defines": [],
"compilerPath": "/usr/bin/gcc",
"cStandard": "c11",
"cppStandard": "c++14",
"intelliSenseMode": "clang-x64"
}
],
"version": 4
}
c_cpp_properties.json 설정-
{
"configurations": [
{
"name": "Win32",
"compilerPath": "C:/MinGW/bin/g++.exe",
"includePath": [
"C:/MinGW/lib/gcc/mingw32/9.2.0/include/c++"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "windows-gcc-x64"
}
],
"version": 4
}
최근 설치한 Visual Studio를 제거하여 이 문제를 해결했습니다.
은 "이렇게 하다"를 입니다.compilerPath
의 속성c_cpp_properties.json
include 를 system include paths에 되지 않습니다.includePath
★★★★★★★★★★★★★★★★★★.
하지 c_cpp_properties.json
입니다.C_Cpp.default.compilerPath
★★★★★★ 。
정음음음 in in in in in in in in in in 。c_cpp_properties.json
설정을 다음과 같이 변경합니다.
이렇게 해서 지금 하고 있어요. Configuration for c_cpp_properties.json
{
"configurations": [
{
"name": "Win32",
"compilerPath": "C:/MinGW/bin/g++.exe",
"includePath": [
"C:/MinGW/lib/gcc/mingw32/9.2.0/include/c++"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "windows-gcc-x64"
}
],
"version": 4
}
task.json configuration
★★
{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++.exe build active file",
"command": "C:\\MinGW\\bin\\g++.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "C:\\MinGW\\bin"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "compiler: C:\\MinGW\\bin\\g++.exe"
}
]}
코드에도 ++ 러너 는 「」, 「」입니다.이것이 제가 이해한 것입니다.C/C++는 경로이다를 포함합니다.${workspaceFolder}/**
워크스페이스 폴더에서 라이브러리 헤더 함수 파일을 재귀적인 하향식으로 검색합니다.이 경우 모든 라이브러리 헤더 함수 파일의 복사본을 모든 작업 폴더에 보관해야 합니다.아래에 나에게 효과가 있었던 솔루션을 적어두었습니다.
순서:1이 문제는, 에러가 발생하고 있는 구불구불한 선아래의 벌브를 오른쪽 클릭하고, 「경로 설정 편집」을 클릭하는 것만으로 해결할 수 있습니다.
순서:2 「경로 포함」섹션까지 스크롤 다운 해, 패스 값을 컴파일러 폴더에 추가해,/**
모든 분기 폴더에서 재귀 검색을 사용하도록 설정합니다.어떤 이유로 라이브러리 헤더 파일이 다른 곳에 저장되어 있는 경우 해당 경로를 추가합니다.또한 헤더 파일이 저장된 폴더의 정확한 값을 추가하여 더 정확하게 지정할 수 있습니다.
끝! 이제 더 이상 꼬불꼬불한 선 오류가 발생하지 않아야 합니다!스위글리 라인은 이제 그만!
VS VS (1.48.1)입니다.이 답변은 IntelliSense 정보를 생성하지 않는 파일의 문제를 해결했습니다(질문에서와 같은 근본적인 문제).하지 않은 (IntelliSense 리셋)Ctrl+Shift+P → C/C++: Reset IntelliSense database
안 맞았는데
에러)이 확인합니다., 「 에러」는 없습니다.#include
이치노워크스페이스별 고객명>/).워크스페이스 디렉토리에 c_cpp_properties.json 파일을 생성하여 이 작업을 수행합니다(내 파일에는 아직 파일이 없는 것 같음). Ctrl+Shift+P → C/C++: Edit Configurations (JSON)
. 에 경로를 includePath
문제가 있는 파일 및 포함된 모든 파일에 오류가 포함될 때까지 계속됩니다. 변수, 즉 '어울릴 수 없다'를 사용합니다.${workspaceFolder}
워크스페이스의 루트 디렉토리를 참조합니다.그건 그렇고, 내 건 디폴트인데${workspaceFolder}/**
includePath
워크스페이스 폴더 전체를 재귀적으로 검색하여 포함 파일을 검색합니다.적어도 하나의 특정 파일에서는 작동하지 않았습니다. i i i i i i i i i i i i i i i i i i 。${workspaceFolder}
VS 코드 、 [ VS Code ], [ VS Code ], [ VS Code ]를 선택합니다.표준 라이브러리 인크루드에는 문제가 없었습니다.따라서 이 답변은 이러한 문제를 다루지 않습니다.
모든 IntelliSense 정보가 올바르게 표시되기 전에 IntelliSense 데이터베이스를 다시 리셋하고 VS 코드를 재시작해야 할 수 있습니다.또한 파일을 찾는 데 도움이 되는 include 파일을 여는 데 도움이 되는 것 같습니다.계속 잘 됐으면 좋겠어요.아직까지는 좋아.
저는 MAC M1을 사용하고 있었는데 VS 코드를 사용하여 c++ 프로그램을 코드화하는 중에 이 오류가 발생했습니다.Mac에는 gcc가 아닌 주로 c++ 컴파일러가 미리 설치되어 있습니다.문제가 발생한 것은 <bits/stdc++>를 포함하려고 했기 때문입니다.h> 헤더. clang 컴파일러에서는 지원되지 않습니다.이 헤더는 gcc/g++ 컴파일러에서만 사용됩니다.그래서 (나의 경우처럼) 문제를 해결하기 위해.
- Xcode 가 인스톨 되어 있지 않은 경우는, 우선 인스톨 합니다.
- #include<bits/stdc++는 사용하지 마십시오.h> header. (이 헤더를 계속 사용하려면 homebrew를 사용하여 gcc 컴파일러를 설치하거나 stdc++.h 헤더를 생성하여 헤더 폴더에 붙여넣으면 됩니다.여기를 참조해 주세요.X코드에 <bits/stdc++>를 포함하려면 어떻게 해야 합니까?
언급URL : https://stackoverflow.com/questions/37522462/visual-studio-code-include-stdio-h-saying-add-include-path-to-settings
'source' 카테고리의 다른 글
vue-model-decorator의 @model decorator는 vue-model을 생성합니다.변이 방지 (0) | 2022.08.24 |
---|---|
Vuex: 하위 구성 요소가 상위 구성 요소 디스패치 작업을 기다립니다. (0) | 2022.08.24 |
Arduino 스케치 디렉토리에 모든 라이브러리 유지 (0) | 2022.08.24 |
Vue JS에서 부트스트랩 모달 숨기기 이벤트 처리 (0) | 2022.08.24 |
Vue.js 컴포넌트의 VM입니다.$el constant 또는 재할당 가능합니까? (0) | 2022.08.24 |