簡單c語言問題求助
30
main()
{
char*p1="stuents",*p2,long int*p3;
p3=(long*)p1;p3++;
p2=(char*)p3;
printf("%s\n",p2);
}
答案是多少?我不知道p3=(long*)p1這樣的結構是什麼意思,最好講得詳細一點,諒解一下這些小白,謝謝!
最佳回答:
答案是nts
p3=(long*)p1 這句話是將p1轉化成long型指針 然後讓p3指向p1所指向空間實體 實際上就是為了做相容性賦值
p3++; 因為p3是long型指針 所指空間占4個字節 所以執行完該操作後p3指向nts(向後移4格)
p2=(char*)p3;跟上面的是差不多的
程序可以轉化成 p2=p1+4 來看;