[問題] 字串陣列的位址問題??
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
( 未必需要依照此格式,文章條理清楚即可 )
遇到的問題: (題意請描述清楚)
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char S[3][10]={"Tom","Lily","Jamse Lee"};
int i;
for(i=0;i<3;i++)
printf("S[%d]=%s\n",i,S[i]);
printf("\n");
for(i=0;i<3;i++)
{
printf("S[%d]=%p\n",i,S[i]);
^^^^^正常不是應該要&S[i]嗎??
為什麼書中不用?? 也是跑得出來呢??
printf("address of S[%d][0]=%p\n",i,&S[i][0]);
}
system("pause");
return 0;
}
希望得到的正確結果:
程式跑出來的錯誤結果:
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
有問題的code: (請善用置底文標色功能)
補充說明:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.38.97.109
→
06/02 23:35, , 1F
06/02 23:35, 1F
→
06/02 23:56, , 2F
06/02 23:56, 2F
推
06/02 23:59, , 3F
06/02 23:59, 3F
→
06/02 23:59, , 4F
06/02 23:59, 4F
推
06/03 00:17, , 5F
06/03 00:17, 5F
→
06/03 00:17, , 6F
06/03 00:17, 6F
→
06/03 00:18, , 7F
06/03 00:18, 7F
→
06/03 01:34, , 8F
06/03 01:34, 8F
推
06/03 09:02, , 9F
06/03 09:02, 9F