我试图解析另一个功能与此fprintf中写了一个文件:的fscanf用绳子和长
fprintf(file, "DS;%s;%ld;%ld;%u\n", ds->name, ds->start, ds->period, ds->size)
我使用这个的fscanf:
fscanf(file, "DS;%[^;$]s;%ld;%ld;%u", file_name, &file_start, &file_period, &file_size)
file_name是阅读没问题。但file_start,file_period和file_size始终为0,即使不是预期的。
对于为例,该字符串:
DS;failures;1363978800;600;144
被解析如下:
- FILE_NAME:故障(OK)
- file_start:0(KO)
- file_period:0(ko)
- FILE_SIZE:0(KO)
我在做什么错?
什么返回值?这会告诉你它做了多少转换,如果它不是4,那么你说这些字段被解析为0,它们根本没有被解析(不会被'fscanf()'改变)。 – unwind 2013-03-25 13:40:35
不知道确切的返回值。但是它大于0,因为我测试scanf的错误来检查它的返回值。 – 2013-03-25 14:06:25