| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 429 人关注过本帖
标题:为什末输出的是e呢?是根据什么原理呢?
只看楼主 加入收藏
云漫步
Rank: 1
等 级:新手上路
帖 子:10
专家分:1
注 册:2015-1-25
结帖率:75%
收藏
已结贴  问题点数:18 回复次数:3 
为什末输出的是e呢?是根据什么原理呢?
#include<stdio.h>
main()
{
    char a[]={'a','b','c','d','f','g'},*p;
    p=a;
    printf("%c\n",*p+4);
}
2015-02-25 11:26
somehow1002
Rank: 2
等 级:论坛游民
帖 子:14
专家分:45
注 册:2014-11-4
收藏
得分:9 
*p就是a,a的ASCII码加上4就是e的ASCII码,输出的当然是e喽→_→
2015-02-25 11:32
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:9 
#include<stdio.h>

int main(void) {
    char a[] = {"654321"}, *p = a;
    printf("%c\n", *p + 3);
    printf("%c\n\n", a[0] + 3);
    printf("%c\n", *(p + 3));
    printf("%c\n", a[3]);
    return 0;
}

Only the Code Tells the Truth             K.I.S.S
2015-02-25 14:44
云漫步
Rank: 1
等 级:新手上路
帖 子:10
专家分:1
注 册:2015-1-25
收藏
得分:0 
好的,多谢两位
2015-02-25 19:22
快速回复:为什末输出的是e呢?是根据什么原理呢?
数据加载中...
 
   



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

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