如何正确使用 sscanf?
How do I use sscanf properly?
我相信这是唯一相关的信息:
sscanf("%d:%d:%d", zombies[i].hour, zombies[i].min, zombies[i].sec);
这显然是错误的。我不确定为什么。我已经尝试阅读联机帮助页,显然我需要格式化,但我不明白如何。
注意
僵尸[i].小时,
僵尸[i].min 和
zombies[i].sec 来自结构数组,
具体元素为整数
编译器说我正在从一个没有转换的整数中创建一个指针。
这是什么意思?我该如何正确使用它?
就像 scanf
一样,您需要传递 sscanf
可以用来存储读取值的指针。您还必须传递一个字符串以从中读取值。
sscanf("1:2:3", "%d:%d:%d", &zombies[i].hour, &zombies[i].min, &zombies[i].sec);
如果你不传递指针,你只是传递一个值,所以如果 zombies[i].hour
的当前值恰好是 45,例如,它类似于:
scanf("%d", 45);
这毫无意义。
我相信这是唯一相关的信息:
sscanf("%d:%d:%d", zombies[i].hour, zombies[i].min, zombies[i].sec);
这显然是错误的。我不确定为什么。我已经尝试阅读联机帮助页,显然我需要格式化,但我不明白如何。
注意
僵尸[i].小时,
僵尸[i].min 和
zombies[i].sec 来自结构数组,
具体元素为整数
编译器说我正在从一个没有转换的整数中创建一个指针。
这是什么意思?我该如何正确使用它?
就像 scanf
一样,您需要传递 sscanf
可以用来存储读取值的指针。您还必须传递一个字符串以从中读取值。
sscanf("1:2:3", "%d:%d:%d", &zombies[i].hour, &zombies[i].min, &zombies[i].sec);
如果你不传递指针,你只是传递一个值,所以如果 zombies[i].hour
的当前值恰好是 45,例如,它类似于:
scanf("%d", 45);
这毫无意义。