我想从一行文件中读取浮点数(以及之后的整数).当我调试它时,我可以看到它从文件中删除线条没有问题,但是当我尝试sscanf它时,我会得到垃圾.这是我的代码:
while(fgets(line, 1000, file) != EOF)
{
//Get the first character of the line
c = line[0];
if(c == 'v')
{
sscanf(line, "%f", &v1);
printf("%f", v1);
}
}
Run Code Online (Sandbox Code Playgroud)
存储在v1中的值是垃圾.为什么这不起作用,我如何从这一行中获得浮动和整数?
你在sscanf的调用中包含了第一个字符(即'v'),因此调用失败并v1保持不变(其中包含垃圾).试试这个:
sscanf(line+1, "%f", &v1);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1378 次 |
| 最近记录: |