z1226834370 发表于 2015-6-21 19:57:36

指针问题

#include<stdio.h>
#include<string.h>

int main()
{
        char *s1="AbDeG";
        char *s2="AbdEg";
        s2+=2;s2+=2;
        printf("%d %d\n",*s1,*s2);
        printf("%s %s\n",s1,s2);
        printf("%d\n",strcmp(s1,s2));
        return 0;
}

s2+=2;s2+=2;这两个语句是什么意思为什么S2输出来只有一个g了?
求大神指点

牡丹花下死做鬼 发表于 2015-6-21 20:21:02

s2 指向的地址是A
两次s2 += 2 就往后四个 就指向g了
当然只有g了 删掉一个就是dEg了

z1226834370 发表于 2015-6-21 21:51:04

牡丹花下死做鬼 发表于 2015-6-21 20:21
s2 指向的地址是A
两次s2 += 2 就往后四个 就指向g了
当然只有g了 删掉一个就是dEg了

谢谢   看懂了
页: [1]
查看完整版本: 指针问题