C語言指標問題,C語言指標問題

2021-04-18 21:58:25 字數 1325 閱讀 5085

1樓:匿名使用者

這個演算法最後的時候

,p和q都是指向a的,在最後這個時候a的結構是,q之前的是所有的除了版*之外權

的字元。q之後的都是原來a裡面的資料,對於這個時刻是髒資料。

最後把q指向的那個位置賦值為\0可以在遍歷a的時候,不遍歷到髒資料,而這個時候p正好指向的就是\0,所以*q=*p

2樓:匿名使用者

迴圈結束條件是*p==0,因此這句是給*q指向的字串末尾賦值字串結束符0,也可以寫*q=0;

3樓:匿名使用者

賦值字串結束符'\0'

c語言指標問題 10

4樓:匿名使用者

最好貼上完整程bai序 或標註有du行號。

提示已zhi經很明顯,74行是ptr重複宣告dao了(這一專段裡面沒看到

屬重複宣告,所以應該在它前面的**段裡),且不能用uint8_t型別的值去初始化uint16_t型別的例項(這兩個型別是定義的類還是直接typedef?)

78行,表示式必須是指向物件型別

5樓:匿名使用者

ptr重複申明,

兩個型別不一樣;

表示式必須有指向物件型別的指標

6樓:歷史的文風

30分鐘徹底學會c語言指標

c語言指標問題

7樓:匿名使用者

#include

int main(void)

max=min=sz[0];

for(i=1;ip[i])

printf("  max = %d position %d\n",max,j+1);

printf("  min = %d position %d\n",min,k+1);

return 0;}

c語言指標問題

8樓:金色潛鳥

*tt 不加

抄 單引襲

號,'a' 裡無

bai空格du

。zhi

改好了dao。

#include

int main()

;scanf("%s",a);

for (tt=a; *tt !='\0'; tt++)if (( *tt >='a') && ( *tt <='z'))pp[*tt-'a']+=1;

for (i=0;i<26;i++) printf("%d ",pp[i]);

return 0;}

C語言這個F函式再指標C語言指標問題

28f為傳值呼叫。所以f中的修改不影響main中變數的值。輸出的還是原始值。即 4,3,5 選d29 a 4b a q b w q b q null a q 0 由於q已經賦值為null,再對 q賦值會引起程式崩潰。這個不對 b w p 指標間賦值,正確。c p a 也就是a a 正確。d p w ...

C語言NULL指標問題,C語言空指標是怎麼回事

不知道你用的系統和gcc的版本是什麼?在我所使用的linux工作站以及freebsd工作站上均未出現此問題,輸出均為 null 字串,在soliras系統上測試,兩個結果均為段錯誤,沒有出現你所說的現象。出現段錯誤的原因有 1 引用乙個包含非法值的指標 例如空指標。2 未得到正確的許可權的時候進行訪...

C語言的指標問題

這兩個程式都只有乙個主函式,當你需要呼叫函式的時候,就涉及到引數傳遞的問題了。這時如果你要在呼叫的函式中直接改變實參的值的話,引數傳遞就必須傳遞位址,也就是要用到指標了。如果你只是傳遞引數值的話,在呼叫的函式中,會為形參分配臨時的儲存空間,把實參的值傳遞給它,也就是說傳遞的只是值。可能你是剛開始接觸...