看板 C_and_CPP 關於我們 聯絡資訊
int main { char *str="hello"; void *add=0; add=str; cout<<str<</t<<add<<endl; system("pause"); return 0; } 想請問一下為什麼將str改成*str輸出的結果會是h? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 36.235.171.79
diabloevagto:你可以將char*想成是一個array,str是指向第一個的 01/03 22:48
diabloevagto:位置,你用*就會取到第一個h 01/03 22:48
ssadd502227:那假如要取第2個也就是e的話要怎樣取呢? 01/03 23:01
leiyan:+1 01/03 23:08
linotwo:*(str + 1) 或 str[1] 01/03 23:25
ssadd502227:謝謝,我要問的是用*的取法,感恩 01/03 23:35
loveme00835:型態char*就是在跟你講"我指到char快用*來取我指到的" 01/04 10:01
loveme00835:"字元",不要被 str literal騙去了,指標型態書上都有 01/04 10:03
loveme00835:教,好好看一遍再跳下去寫 01/04 10:04