OS 과정을 배우고 있습니다. 우리는 파이프를 가르쳤고이 프로그램은 GCC 4.4.7에서 컴파일되지 않습니다. main
을 int main
으로 변경하면 정상적으로 컴파일됩니다. 그 이유는 무엇입니까?이 파이프 프로그램이 컴파일되지 않습니다.
명령 행 : gcc pipedemo.c
#include<stdio.h>
#include<sys/types.h>
#include<string.h>
#include<unistd.h>
#include<stdlib.h>
#define BUFFER_SIZE 100
#define READ_END 0
#define WRITE_END 1
main()
{
char source[]="pipe_program";
char dest[BUFFER_SIZE];
char datas[BUFFER_SIZE];
char datar[BUFFER_SIZE];
int fd1[2],fd2[2];
pid_t pid;
if(pipe(fd1)==-1)
{
fprintf(stderr,"Pipe creation failed\n");
exit(0);
}
if(pipe(fd2)==-1)
{
//...
}
//...
}
귀하 또는 귀하의 친구가 비표준 함수 정의 구문을 사용하려는 이유가 있습니까? – MikeCAT
이유는'-Werror' 옵션 또는 그럴 수 있습니다. 명령 줄 옵션을 공개 하시겠습니까? – MikeCAT
@MikeCAT 나는 이유가 없지만 기본적으로 리턴 타입은 int이므로 우리가 썼다. 그러나 나는 무엇이 오류인지 알기를 원합니다. 편집에서 intrested가 아닙니다. –