标题:为什末输出的是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



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-442179-1-1.html




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

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