我試圖讀取read()
上運行良好的open()
返回的文件描述符,但它只是不起作用返回22
與errno
。read():無效的參數
下面是代碼:
int input = open(argv[1], O_RDONLY|O_DIRECT);
char buffer_header[4];
if(read(input,buffer_header,4) > 0)
image_width = bytesToInt(buffer_header);
printf("%d\n",errno);
發生了什麼事是,在read()
條件不匹配。難道我做錯了什麼?返回的文件描述符是3
。
'errno'纔有效,如果出現了錯誤。你沒有得到一個錯誤。 – Barmar
'read()'返回-1,如果我在'if'structure中添加'printf()',它不會打印任何內容。 – Marc