主函數將在無限循環中讀取用戶放入終端的數字並將它們存儲在緩衝區中。我的問題是我需要使用此功能從終端讀取:如何使用讀取功能從終端輸入(stdin)讀取?
read(int fd, void *buf, size_t count);
哪有文件描述符點到終端? (我希望我不是說一些野蠻行徑)
在此先感謝!
編輯:我已經接受了你的建議,但有些東西缺失。這是我寫的測試的小程序:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int buffer[5], i=0, j;
int main(){
for(j=0; j<5; j++) buffer[j] = 0;
while(i<5){
read(STDIN_FILENO, buffer, 8);
printf("->%d\n", buffer[i]);
i++;
}
return 0;
}
Outup:
1
->2609
2
->0
3
->0
4
->0
5
->0
爲什麼這不打印我的數字?
'fileno(stdin)' – BLUEPIXY 2014-11-21 20:28:22
@BLUEPIXY如果我有一個文件描述符STDIN_FILENO,爲什麼要使用該函數? – Miguel 2014-11-21 20:36:48
它可能會被重寫。 – BLUEPIXY 2014-11-21 20:46:13