Q
默認C變量初始化
-2
A
回答
1
它沒有。它導致未定義的行爲,其中任何東西都可能發生。您無法以定義的方式訪問超出數組末尾的元素。
什麼是最有可能發生的是,a
是棧,從而導致具有相同地址a
x[1]
上只是「上面」 x
,但它絕不是一種保障。
這當然,假設您的printf
是一個錯字。就目前而言,它甚至沒有編譯。我是假設這是一個錯字,因爲問題標題只是詢問x[1]
的值而不是輸出。
爲了得到它的工作,你必須使用類似:
printf ("x[1] = %d\n", (&x)[1]);
這也我的系統上打印2
,但可以做一些完全不同的其他地方。
+1
在那個例子中,它會給出錯誤「下標值既不是數組也不是指針」。因爲x是一個int。 – dreamcrash
+1
@dreamcrash:正確。我添加了額外的細節以涵蓋最有可能被問到的內容。 – paxdiablo
相關問題
- 1. C++默認初始化
- 2. 如何將默認值初始化爲C#7輸出變量?
- 3. 默認初始化與默認構建值的初始化初始化
- 4. C#初始化變量
- 5. C#:初始化類變量
- 6. C#λ變量初始化
- 7. C變量未初始化
- 8. C#6.0的默認初始化
- 9. C++均勻初始化用默認值
- 10. C++中的默認初始化
- 11. 默認結構初始化在C++
- 12. C++默認初始化類型
- 13. 何時以及如何默認初始化常量變量?
- 14. 默認初始化混亂
- 15. WINHTTP_CURRENT_USER_IE_PROXY_CONFIG默認初始化
- 16. 默認初始化列表
- 17. 開始C.變量未被初始化
- 18. 類可以默認初始化其「指針成員變量」?
- 19. 做默認構造函數初始化的靜態變量?
- 20. Java - 靜態初始化與靜態變量的默認值
- 21. GW基本的默認變量初始化
- 22. Cygwin中的分段錯誤和默認變量初始化
- 23. 爲什麼局部變量不能用默認值初始化?
- 24. C++類參數默認常量初始化
- 25. 初始化向量與變量,C++
- 26. C++類變量:初始化向量與
- 27. C++並初始化常量變量
- 28. 變量初始化(C#和C++)
- 29. 變量初始化?
- 30. 初始化變量
需要更多的上下文/信息。 printf在字符串中沒有格式規範,所以我不知道你是如何讓ax [1]爲2,並且你正在取一個數組中元素的地址,而不是得到x [1]的值, 。你能提供更多信息嗎? – Glenn