해당 파일이없는 경우 "common.txt"라는 파일을 만든 다음 단일 char을 추가하고 싶습니다.UNIX C - 간단한 write() 작업이 계속 실패합니다.
이 내 관련 코드입니다 :
char buffer3[2];
buffer3[0]='Z';
buffer3[1]='\0';
//open
filed=open("common.txt", O_CREAT | O_APPEND, O_WRONLY);
//append
int result=write(filed, buffer3, 2);
if(result==-1){
cout << "WRITE FAILED!" << endl;
}else{
cout << "WRITE SUCCEEDED!" << endl;
}
//close
close(filed);
쓰기() -1을 반환 유지. write()의 3 번째 인수에 대해 1, 2, 3의 값을 시도했지만 그 중 하나도 작동하지 않았습니다. 어쩌면 내 open() 플래그가 올바르지 않을 수 있습니다.
'열기'가 성공 했습니까? –
btw보다 간단하게 버퍼를 정의 할 수 있습니다 :'char * buffer3 = "Z";'. 그런 다음 수동으로 null을 종결하지 않아도됩니다. 또한'write'에서 세 번째 매개 변수는'strlen (buffer3)'일 수 있습니다. – meskobalazs
열기가 성공하여 3의 결과 값을 반환했습니다. –