[英]why does the second print (my_print_2) print nothing?
從用戶(在main
中)掃描字符串,並調用函數isComplicated
(此處僅顯示其開頭)。 有人可以解釋為什么第二個打印( my_print_2
)什么都不打印嗎? 第一個打印( my_print_1
)工作正常並打印掃描的字符串。
謝謝。
bool isComplicated(char *str) {
int length = 0;
printf("my_print_2 %s \n", str);
}
/////////////////////////////
int main() {
char str[N] = { 0 };
printf("Please enter your string and a non-negative
integer...\n");
if (scanf("%s%d", str, &k) != 2 || k < 0)
exit(1);
printf("my_print_1 %s \n", str);
if (isComplicated(str))
printf("Complicated \n");
return 0;
}
您的代碼中充滿了如此微不足道的錯誤,以至於編譯器應該都能檢測到它們。
研究如何在編譯器中啟用警告,然后理解它們並最終正確修復它們。
對於 GCC,這意味着添加編譯選項-Wall -Wextra -Werror
。
如果您在理解編譯器的錯誤消息時遇到困難,歡迎您在這里提問。 修復當前代碼中的瑣碎錯誤通常是您在詢問之前應該做的事情,我所說的瑣碎是指編譯器檢測到的那些錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.