我試圖用C來寫一個函數,獲取整型作爲參數並返回一個字符數組(或字符串)字符串int值。函數返回,而不是用C
const char * month(int x)
{
char result[40];
if(x<=31) strcpy(result,"can be a day of the month");
else strcpy(result,"cannot be a day of the month");
return result;
}
但我的函數返回一個int,而不是一個字符串。我已閱讀,人們可能會碰到類似情況的帖子,但我不明白的指針式功能是如何工作的,以及如何使他們返回我想要的(我已經證明一點關於指針和我有關於怎樣的想法他們獨立工作,但我從來沒有嘗試過寫一段代碼,增加了一些功能對他們來說,就像做一個解決方案更有效或別的東西。)
'result'。返回的指針是無效的,並且取消引用它是未定義的行爲。 –
當函數退出時'結果'超出範圍和生命。有很多這樣的問題。 –
這是C代碼還是C++代碼?兩種語言的答案完全不同。 –