C++语言程序设计

4． 把一个数字字符串转换为相应的整数
我们可以把由数字组成的字符串转换成对应的整数值，一个数字字符转为整数可用它的ASCⅡ码值减去字符0的ASCⅡ码值求得，如：
I = c - '0';
程序如下：

| 例6-14

#include <iostream.h>
#include <stdio.h>
void main(void)
{
char s[10];
int i,n,sign;
cout<<"Input a numberic string"<<endl;
cin>>s;
i = 0;
sign = 1;
if(s[i] == '+' || s[i] == '-')//符号
sign = (s[i ++] == '+')?1:-1;
for(n = 0;s[i] >= '0' && s[i] <= '9';i ++)
n = n * 10 + s[i] - '0';
n = sign * n;
cout<<n<<endl;
}

运行该程序并输入：
Input a numberic string
123↙
运行结果为：
123
本程序允许数字串中带有正负号，语句
sign = (s[i ++] == '+')?1:-1;
用到条件运算符，它相当于
sign = (s[i ++] == '+')
sign = 1;
else
sign = -1;