-5
char* fun()
{
return "awake";
}
int main()
{
printf("%s",fun()+ printf("I see you"));
return 0;
}
輸出::我看到youee你
int main()
{
printf("%s",5+printf("I see you"));
return 0;
}
輸出::運行時崩潰
1)爲什麼這兩個方案的不同的行爲?
2)任何人都可以解釋爲什麼「清醒」沒有打印在第一個PRINTF?
3)情景1是依賴於編譯器嗎?
爲什麼你會期望兩個有相同的行爲? – juanchopanza
@已否定,我不這麼認爲。它是一個字符串文字。 – juanchopanza
@juanchopanza但函數返回的字符串被忽略。 – ameyCU