const string為函式引數的警告

2021-06-25 10:29:26 字數 404 閱讀 2596

今天程式設計遇到的乙個warning:

testpasv.c: in function 『string_ctl』:

testpasv.c:7:3: warning: assignment discards 『const』 qualifier from pointer target type [enabled by default]

p=str;

雖然不處理該warning也能正常執行,但是還是要分析下,其實問題在於

傳入函式的引數是乙個字串 const char* str 顯然不希望函式更改字串內容

但是在函式裡直接使用普通指標char *p 指向字串,會有通過該指標改變字串的風險

所以應該const char *p  這樣指標指向的內容就被鎖定了

再次編譯,警告解除。

python 入參函式 Python 函式傳參

這個世界其實從不曾有乙個人能取代另乙個人的位置,所謂的取代,只是以前的那個人被遺忘了。普通傳參的小坑def test a return a print test print test print test 返回的結果 a a a a a a 原因 傳入的引數是乙個空的列表,python遇到函式的時候...

可變參函式

int add int x,int main int add int x,int sum 0 char point char x for int i 0 iint add int x,可變參函式原型,該函式中帶有識別符號的引數 x記錄的是引數的個數,後面的數字是需要求和的數。x的作用是為了標誌出加數...

可變參函式

採用c語言程式設計的時候,函式中形式引數的數目通常是確定的,在呼叫時要依次給出與形式引數對應的所有實際引數。但在某些情況下希望函式的引數個數可以根據需要確定。例如 printf const char format,c語言可變引數通過三個巨集 va start va end va arg 和乙個型別 ...