一只平凡的骡子 2015-11-30 12:55 采纳率: 50%
浏览 1477
已采纳

C 语言基础问题 指针素组 为什么指针p所指向地址会被改变?

#include

char *p[] = {"to","yes","is ok","how do you do ?","holle"};

int main(int argc,char* argv[])
{
int a[5] = {0};
int i = 0;
int j = 0;
char ** t;

t = p;  
    for(i = 0; i<5;i++)
{
    printf("%x \t",p[i]);
}

for(i = 0; i<5; i++)
{
    while( *t[i] != '\0')
    {

        t[i]++;

        a[i]++;
    }
}

for(i =0 ;i<5;i++)
{
    printf("%d \n",a[i]);
}

    for(i = 0; i<5;i++)
{
    printf("%x \t",p[i]);
}

return 0;

}图片说明

  • 写回答

4条回答 默认 最新

  • ysuwood 2015-11-30 13:23
    关注
     #include<stdio.h>
    char *p[] = {"to","yes","is ok","how do you do ?","holle"};
    int main(int argc,char* argv[])
    {
        int a[5] = {0};
        int i = 0;
        int j = 0;
        char * t;//修改
        for(i = 0; i<5;i++)
        {
            printf("%x \t",p[i]);
        }
        printf("\n");
        for(i = 0; i<5; i++)
        {
            t=p[i];//修改
            while( *t != '\0')//修改
            {
                t++;//修改
                a[i]++;
            }
        }
    
        for(i =0 ;i<5;i++)
        {
            printf("%d \n",a[i]);
        }
    
        for(i = 0; i<5;i++)
        {
            printf("%x \t",p[i]);
        }
        printf("\n");
    
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助