2011-09-28 99 views
2

我學習C.挖掘一些C源代碼,我發現那條線。我已閱讀關於指針,但我沒有看到這樣的例子。關於奇怪指針的問題

char *uppercase (char *s); 

這是什麼意思?

回答

6

它是一個函數的聲明,它接受一個char指針並返回一個char指針。

0
char *uppercase (char *s); 

相同

char* uppercase (char *s); 

其返回類型是char*;它返回一個指針。

0

這意味着函數需要一個指向字符的指針並返回一個指向字符的指針,即字符串的開始。

0

uppercase是機能缺失它返回一個字符類型地址(即,它可以被存儲在一個字符指針)作爲其寫爲char *uppercase ... uppercase()需要一個字符指針作爲參數char *s ... 因此其寫入作爲char *uppercase(char *s)

0

在C中,只要位於類型和名稱之間,*的位置並不重要。所以char* schar *s甚至char * s相同。

這同樣適用於函數及其返回類型,char* uppercase()相當於char *uppercase()char * uppercase()

C中的空白或多或少被忽略,因此在編寫自己的代碼時,我建議您選擇一種格式並堅持使用它。

0

星號*的位置可以是任意位置:返回類型或函數名稱之間。 將其保留在返回類型的末端更合乎邏輯,即char*