test.c
int main() {
int fd = open("/test/aaa",O_RDONLY);
char * str;
int len;
str = (char*)malloc(sizeof(char));
len = read(fd,str,100);
close(fd);
printf("%s\n",str);
free(str);
str = NULL;
return 0;
}
出力は次のようになります。
$echo 300 > /test/aaa
$gcc test.c -o test
$./test
300
$
ここに改行出力があるのはなぜですか? 乗りこなす安全な方法はありますか?または、 read() を間違った方法で使用しましたか? ありがとう!