1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > c语言 char* 参数 深入理解c语言中两级指针(char **pptr)的参数的用法

c语言 char* 参数 深入理解c语言中两级指针(char **pptr)的参数的用法

时间:2023-05-26 04:04:07

相关推荐

c语言 char* 参数 深入理解c语言中两级指针(char **pptr)的参数的用法

/**/##*msgg[]={"","","","","","","Saturday"};voidget_w_day(constchar**pp){pp[0]=msgg[2];//*pp=msgg[0];pp[1]=msgg[3];//*(pp+1)=msgg[1];}intmain(void){charptr[2]={};constchar*pptr=ptr;//这里初始化也可以为NULL,不会导致编译出错和运行时的段错误,但在实际程序中最好详细初始化constchar**ppptr=pptr;//在ppptr参数传入get_w_day()函数之前,必须对其进行初始化,否则会导致运行时的段错误//仔细想一下原因,如果ppptr是NULL,那么get_w_day()函数修改的*ppptr就会修改一个不确定的位置//进一步从底层查找原因,如果ppptr是NULL,那么传入get_w_day()时刻的实际值就是0x0,也就是我们要操作*((char*)0x00)=??//这样必然导致一个段错误get_w_day(ppptr);charfuck=**ppptr+1;//这里的fuck应该等于几?答案是'U'=='T'+1charfuckk=*(*ppptr+1);//如果是fuck=*(*ppptr+1)呢?答案是'u'==指向"Tuesday"头指针加1charfuckkk=**(ppptr+1);//如果是**(ppptr+1)呢?答案是'V'charfuckkkk=**((ppptr+1)+1//是'W'=='V'+1charfuckkkkk=**((ppptr+2)+1//是一个不确定的值,有可能引起段错误printf("%s\t%s

",*ppptr,*(ppptr+1));return0;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。