gpt4 book ai didi

C:使用 read 系统调用从 stdin 读取 double

转载 作者:太空宇宙 更新时间:2023-11-04 02:05:28 28 4
gpt4 key购买 nike

我想问如何使用 read 系统调用从 stdin 读取 double、int 或任何其他类型。

到目前为止我做了什么:

long val ;
ssize_t r;
r = read(STDIN_FILENO,&val,sizeof(long));
printf("%ld\n",val);

有什么想法吗?

最佳答案

您不清楚是否要读取 (a) long、double、int 或其他任何内容的 ASCII 表示形式(即字符串“0.12345”,或 (b) 该值的二进制表示形式。

如果你想做(a),你需要使用fscanf .请参阅上面的答案。

如果您想执行 (b),您的代码在我看来是正确的。你的“坏结果”是什么?你检查过r<0了吗? , 然后看errno或使用 perror() .

我怀疑问题出在您想要执行 (a),但为 (b) 编写了代码。

关于C:使用 read 系统调用从 stdin 读取 double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21102580/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com