| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 533 人关注过本帖
标题:新手问个char *a的问题
只看楼主 加入收藏
gbs121
Rank: 1
等 级:新手上路
帖 子:11
专家分:1
注 册:2011-3-7
结帖率:0
收藏
 问题点数:0 回复次数:9 
新手问个char *a的问题
见程序
void main()
{char *ch="012345";
int i;
for(i=0;i<6;i++)
printf("%d",ch[i]);
}
问下为什么输出的不是012345啊?谢谢
2011-08-31 11:50
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
因为你使用了%d,限定为数值,所以输出的是字符内码。

授人以渔,不授人以鱼。
2011-08-31 11:53
晓云林
Rank: 2
等 级:论坛游民
帖 子:46
专家分:35
注 册:2011-8-29
收藏
得分:0 
把%d换成%c试试~~
2011-08-31 17:15
platolgq
Rank: 2
来 自:江西
等 级:论坛游民
帖 子:74
专家分:87
注 册:2011-2-24
收藏
得分:0 
同2楼,输出的时候一定要注意输出的格式

C种的自学者
2011-08-31 17:22
怎么会这样子
Rank: 2
来 自:广州
等 级:论坛游民
帖 子:31
专家分:39
注 册:2011-8-20
收藏
得分:0 
2楼加把%d换成%s试试
由于你这句char *ch="012345";
已经把它赋值为字符串了!要用%s
2011-08-31 17:25
woai_kmust
Rank: 2
等 级:论坛游民
帖 子:29
专家分:41
注 册:2011-8-31
收藏
得分:0 
回复 5楼 怎么会这样子
要用%d
2011-08-31 23:07
Heart→M鹏
Rank: 2
等 级:论坛游民
帖 子:80
专家分:94
注 册:2011-5-13
收藏
得分:0 
程序代码:
# include <stdio.h>
int main(void)
{
    char *ch="012345";
    int i;
   
    for(i=0;i<6;i++)
        printf("%c",ch[i]);
   
    return 0;
}
2011-08-31 23:24
taqiao
Rank: 1
等 级:新手上路
帖 子:7
专家分:3
注 册:2010-7-2
收藏
得分:0 
void main()
{char *ch="012345";
int i;
for(i=0;i<6;i++)
printf("%c",ch[i]);
}
2011-09-01 09:05
劣质数轴
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:89
专家分:163
注 册:2010-11-19
收藏
得分:0 
以下是引用怎么会这样子在2011-8-31 17:25:31的发言:

2楼加把%d换成%s试试
由于你这句char *ch="012345";
已经把它赋值为字符串了!要用%s


是用%c
LZ是用for()一个一个输出字符串ch里的值的,所以是用%c
如果要用%s的话是这样printf("%s", ch);
2011-09-04 22:19
怎么会这样子
Rank: 2
来 自:广州
等 级:论坛游民
帖 子:31
专家分:39
注 册:2011-8-20
收藏
得分:0 
以下是引用劣质数轴在2011-9-4 22:19:37的发言:

 
 
是用%c
LZ是用for()一个一个输出字符串ch里的值的,所以是用%c
如果要用%s的话是这样printf("%s", ch);
哦,看错了!对不起啊!
2011-11-15 22:19
快速回复:新手问个char *a的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026780 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved