c语言中数字字符串中的数字转化成一个个数字并存入整形数组

1.在一个字符串中输入若干数字,中间用空格分开,输入最后一个数字后也用空格符分开;
如输入 12 21 -2 -3 2 3 6 100 回撤
2.建立一个整形的数组b[8],并把数字字符串中的数字赋给整形数组b
如b[0]=12,b[1]=21,b[2]=-2,...,b[7]=100
(通过一个c语言程序完成此功能)
1楼的没有理解我的意思。。

/**************************************************
* 函数名: CharToInt
* 参数:
* 形参:
* intString: 保存整数的字符串
* 返回值:
* int: 成功返回转换后的整数,否则返回0
* 功能:
* 把字符串转换成整数
* 例如:
* "1200" => 1200
* 作者: sdh
* 编写明细:
* 完成时间 2009-10-23 作者名 sdh
**************************************************/

int CharToInt(char* intString)
{
int i =1;
int j =1;
int b =0;
int a =strlen( intString );

for( i=0 ;i<a ;i++)
{
b = b+(intString[a-i-1]-48)*j;
j=j*10;
}
return b;
}

这个函数只能将一个字符串中的数字字符转换成一个数字。如果多个数字用空格隔开,我想是不是可以先记录空格的位置,然后求出每个字符函数在数组中的位置,比如b[]="12 21 -2 -3 2 3 6 100 ",-2的位置就是从b[6]到b[7],然后将每个数字字符串当做一个小数组调用我上面的那个函数。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-25
/**************************************************
*
函数名:
CharToInt
*
参数:
*
形参:
*
intString:
保存整数的字符串
*
返回值:
*
int:
成功返回转换后的整数,否则返回0
*
功能:
*
把字符串转换成整数
*
例如:
*
"1200"
=>
1200
*
作者:
sdh
*
编写明细:
*
完成时间
2009-10-23
作者名
sdh
**************************************************/
int
CharToInt(char*
intString)
{
int
i
=1;
int
j
=1;
int
b
=0;
int
a
=strlen(
intString
);
for(
i=0
;i<a
;i++)
{
b
=
b+(intString[a-i-1]-48)*j;
j=j*10;
}
return
b;
}
这个函数只能将一个字符串中的
数字
字符转换成一个数字。如果多个数字用
空格
隔开,我想是不是可以先记录空格的位置,然后求出每个
字符
函数在
数组
中的位置,比如b[]="12
21
-2
-3
2
3
6
100
",-2的位置就是从b[6]到b[7],然后将每个数字字符串当做一个小数组调用我上面的那个函数。
第2个回答  2009-10-27
额0 0 刚么仔细看

先toCharArrays()
for循环
记录数字,到
值==32的时候,停止本次记录
保存本此数

over-.-