我一直在阅读有关strtol here的一些文档
在一个例子中,当一个新数字开始时,一个人使用空间来显示这个功能。我是C ++的新手,我不知道很多指针以及它们是如何工作的,所以我决定你问问你。我可以使用点而不是空格来分割数字吗?例如,如果我有这个:char text[] = "3.16.88"
并且我想将它转换为三个不同的变量,比如这个a = 3, b = 16, c = 88
,我还可以使用strtol还是我应该尝试别的?
感谢
答案 0 :(得分:4)
这正是文档所说的。
在小数的情况下,只会解析数字0..9
,扫描将在下一个非数字处停止。
前导空格将自动被丢弃。如果你想提前扫描下一个数字,你需要添加一个简单的循环来跳过非数字,从end_ptr
开始,strtol
可以在其中一个参数中返回(使用它;不要不要将它设置为NULL
。