본문 바로가기
윤성우 열혈강의 C 정리

[ C 열혈강의 ] Visual Studio IDE 에러처리2

by 어린왕자1234 2022. 6. 30.

sizeof_t  서식문자

sizeof 연산자와 offsetof 매크로의 결과, size_t형 변수를 출력할 때는 서식 지정자에 z를 붙입니다(size의 z). 보통은 z를 붙이지 않고 %d로 출력하는데 C 언어 표준을 엄격하게 따르자면 %zd가 맞습니다(8진수는 %zo, 16진수는 %zx).

size_t는 32비트에서 4바이트, 64비트에서 8바이트로 정의되어 있습니다.

다음은 Visual Studio에서 size_t를 정의한 부분인데 

__int64는 Visual Studio에서 제공하는 8바이트 정수 자료형입니다.

#ifdef _WIN64    // 64비트일 때
    typedef unsigned __int64 size_t;    // 8바이트 크기의 부호 없는 정수 자료형
#else            // 64비트가 아닐 때
    typedef unsigned int     size_t;    // 4바이트 크기의 부호 없는 정수 자료형
#endif

C 언어 표준 함수에서도 크기를 의미하는 매개변수나 반환값은 size_t를 사용하고 있고, CPU 비트 수에 맞게 자료형을 제공하고 있으므로 크기를 의미하는 변수는 unsigned int 대신 size_t로 선언하는 것이 좋습니다.

 

출처 : 코딩도장

 

오류(활성) E1696 파일 소스을(를) 열 수 없습니다.
헤더파일 전처리 과정에서 발생
[ 원인 ]

헤더파일의 경로와 main 소스파일의 경로 불일치

[ 해결책 ]
해결책1 : 헤더파일과 main 소스파일을 동일 폴더에 포함
해결책 2 : 다른 헤더파일 첨부 필요 시
                 프로젝트 속성 > 구성속성 : C/C++ < 미리 컴파일된 헤더
                                                                              > 미리 컴파일된 헤더 : 사용 선택       
                                                                              > 미리 컴파일된 헤더 파일 : 원하는 헤더파일 선택
                                                                              > 미리 컴파일된 헤더 출력 파일 : 출력 파일 지정

 

# stdafx.h
stdafx.h는 standard application frameworks의 약자로 표준 애플리케이션 프레임워크

# .pch  : 컴파일된 헤더 파일
 

 

 

lnt-uninitialized-local 지역 변수가 초기화되지 않았습니다. 
도구>옵션>텍스트 편집기>C/C++>코드 스타일>Linter