C 将字符数组转换为整数值并添加它们

C 将字符数组转换为整数值并添加它们,c,linux,C,Linux,如何从用空格分隔的字符数组中提取数字,将其转换为整数并求和?例如: "34 54 3 23" 您需要解析字符串 如果您知道其中有多少个整数,您可以只使用一个sscanf 否则,找出空格的位置(例如,与strtok类似的东西),然后使用atoi读取整数。我将从数组的开头开始,依次用isdigit()检查每个字符,并保留当前值和当前总数。 当到达终止的NUL char(或数组的最后一个元素)时,当前总数已经计算出来。atoi()在出现问题时非常不友好。最好使用strtol():)你的意思是希望结果

如何从用空格分隔的字符数组中提取数字,将其转换为整数并求和?例如:

"34 54 3 23"

您需要解析字符串

如果您知道其中有多少个整数,您可以只使用一个
sscanf


否则,找出空格的位置(例如,与strtok类似的东西),然后使用atoi读取整数。我将从数组的开头开始,依次用isdigit()检查每个字符,并保留当前值和当前总数。

当到达终止的NUL char(或数组的最后一个元素)时,当前总数已经计算出来。

atoi()
在出现问题时非常不友好。最好使用
strtol()
:)你的意思是希望结果是
3454323
还是
114
?@randy:单击任何StackOverflow页面顶部的“faq”。@randy:Tomalak表示你问了13个问题,其中至少10个问题的答案是经过投票的,但你没有“接受”任何一个问题“对您最有帮助的答案”(即单击答案左侧的大箭头)。如果人们看到你感谢他们的帮助,他们会更愿意提供帮助。@randy:这看起来也像是一个家庭作业类型的问题:如果是,应该加上这样的标签,这样我们才能适当地帮助你;)@zhaph先生:好的,从现在起我会勇敢地接受答案。srory我不知道,谢谢你告诉我。请告诉我我我是谁ant没有投票支持答案,但它要求的是开放ID是什么,如何获得它的ID我正在使用c编程没有isdigit函数在第7.4.1.5段(第194页)的(PDF版本)中描述。我拥有的C89标准在第4.3.1.4段中描述了
isdigit
。我的索引副本用于第166页和第249页。