的單個字符據我所知,像指向一個二維陣列
INT示例的陣列[10]
不是別的,只是在一個指針的第一個元素這個數組。
的char * argv的[]
是一個指針陣列;所以應該是指向其他指針的指針。
我現在下面的問題:
int main(int argc, char* argv[])
{
double ptrarg2=argv[2][1];
printf("beginletter=%c\nbeginpos=%d\n",&ptrarg2, ptrarg2);
return 0;
}
我開始計劃與./program test
和期望的輸出是:
beginletter=c
beginpos=123213123
雖然123213123
應該是ADRESS所在的C實際上存儲。
我卻越來越:
beginletter=
beginpos=0
我究竟做錯了什麼?先謝謝你!
你錯過了命令參數中的內容嗎?或者你的數字應該減1。 – Brent81
不,'int example [10]'聲明一個數組對象,而不是,我重複* not *,一個指針對象。數組不是指針。閱讀[comp.lang.c FAQ](http://www.c-faq.com/)的第6節,特別是問題6.3。 –