关于数据类型的转换,char和int

DDHJX503 2007-11-18 12:08:31
switch(op)
{
case '+' : m = atoi(s1) + atoi(s2); break;
case '-' : m = atoi(s1) - atoi(s2); break;
case '*' : m = atoi(s1) * atoi(s2); break;
case '/' : m = atoi(s1) / atoi(s2); break;
};

在上面的程序,s1和s2本来都是char型的,我在书上查了一下,想用atoi把它们转成int型的,但不行啊,谁能提供把char转成int的方法啊
...全文
105 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
0黄瓜0 2007-11-18
  • 打赏
  • 举报
回复


//你要哪种?
char ch='5';
int n=ch-'0';

char* s="1234";
int n=atoi(s);
wdb_xj 2007-11-18
  • 打赏
  • 举报
回复
系统自动转化的,不需要你做这件事
cyclone0417 2007-11-18
  • 打赏
  • 举报
回复


this->Edit1->Text.ToInt();


这个呢?
jixingzhong 2007-11-18
  • 打赏
  • 举报
回复
char or char* ?

char: 建议使用 s-'0' 这种方式转换;
char *: atoi或者 strtol 等方式均可。注意参数的有效性。即作为参数的字符串s的前端必须是 可以转化为 int类型的,比如'1'、'2'这种数字字符,如果是','、'R'这样不可转化的字符,atoi转换自然是无效的。
mgtcllxl 2007-11-18
  • 打赏
  • 举报
回复
使用atoi()时确保你的S1,S2中是有效字符
方法如上楼

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧