关于c语言中的问题

[复制链接]
查看11 | 回复3 | 2008-8-3 10:49:50 | 显示全部楼层 |阅读模式
#include "stdio.h"
void main()
{
char ch[2][5]={"6937","8254"},*p[2];
int i,j,s=0;
for(i=0;i'\0';j+=2)
{s=10*s+p[j]-'0';
printf("%d\n",s);}
}
解释一下程序,并重点解释程序中倒数第三行中的“-'0'”是什么意思?

回复

使用道具 举报

千问 | 2008-8-3 10:49:50 | 显示全部楼层
#include "stdio.h" void main() { char ch[2][5]={"6937","8254"},*p[2]; //这段是定义了一个二维字符串数组,并将前两个元素赋值为6937和8254,后面是定义了一个有两个元素的字符串指针;int i,j,s=0; //这就不用说了吧。。for(i=0;i'\0';j+=2) {s=10*s+p[j]-'0'; print
回复

使用道具 举报

千问 | 2008-8-3 10:49:50 | 显示全部楼层
p[j]-'0'C的字符常量是用单撇号括起来的一个字符.如'n','&'.
回复

使用道具 举报

千问 | 2008-8-3 10:49:50 | 显示全部楼层
-'0' 0的ASCII 码是48.就是s=10*s+p[j]-48;
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行