109. 設(shè)有如下函數(shù)定義:int fun(char *str){ char *p=str;while ( *p != '\0') p++;?return (p-str);}則以下語句執(zhí)行后的輸出結(jié)果是( )。printf("%d\n",fun("Student"));A. 7B. 8C. 9D. 10求會的大神詳細解析下,拜托了
1 回答
已采納

凌丶星護
TA貢獻5條經(jīng)驗 獲得超2個贊
從函數(shù)定義的部分開始解析:
要求傳入的是一個字符類型的指針(亦或者理解為字符串的首地址)
然后將str的值傳遞給p(p中此時存儲的就是字符串首地址)
開始循環(huán),直到p指向的位置為'\0'(也就是說,到達了字符串的末尾)
然后返回p與傳入指針的差值(也就是末尾的地址減去首地址,返回的就是字符串的長度)
實例:
已經(jīng)知道函數(shù)返回字符串的長度,student的長度為7,選擇A選項
點擊展開后面4條
- 1 回答
- 0 關(guān)注
- 974 瀏覽
添加回答
舉報
0/150
提交
取消