내 C 프로그램을 컴파일했는데 gcc -c -o test.exe test.c
오류 없이 컴파일된 다음 실행하면 다음과 같은 결과가 나타납니다.Access is denied.
이것은 내 코드입니다
#include <stdio.h>
int main()
{
printf("Hello, World!");
return 0;
}
답변1
-c
By @Scott 없이 사용해 보세요.
답변2
바이너리/객체/실행 코드 파일에는 여러 종류가 있습니다. 이 이름들이 얼마나 표준적인지는 잘 모르겠지만,CS 11: C 프로그램 컴파일하기(Caltech에서는) "객체 파일"과 "바이너리 실행 파일"을 나타냅니다. 간단한(아마도 지나치게 단순화된) 설명은 개체 파일에는 단일 소스 파일을 컴파일하여 생성된 명령이 포함되어 있는 반면 바이너리 실행 파일은 완전한 프로그램을 나타낸다는 것입니다. (프로그래밍의 "Hello world" 수준을 넘어서면 단일 프로그램을 작성하기 위해 여러 소스 코드 파일을 갖는 것이 일반적입니다.) 객체 파일은 정의에 따라 다소간 다음과 같습니다.불완전한프로그램이므로 실행할 수 없습니다.
로 컴파일하면 함수만 -c
포함하는 객체 파일이 생성됩니다 . main
그것은 다음을 포함합니다부르다하지만 함수 자체나 함수를 찾거나 로드하는 수단은 printf
포함되어 있지 않습니다 . 옵션 printf
을 중단해야 -c
전체 프로그램의 바이너리 실행 파일을 얻을 수 있습니다.