-3
A
回答
0
根據特定的上下文,這些術語有很多種用法。但一般來說,靜態指的是早期指定的東西,或硬編碼到程序中,並且不容易更改。 動態是指有意在飛行中更新的內容。
例如,在C,如果你喜歡聲明數組:
int arr[100];
數組的大小是靜態的:它總是100元。即使你使用宏,像這樣:
int arr[SIZE];
你將不得不更新宏定義並重新編譯程序來改變數組的大小。編譯器會留出固定的內存塊來保存數組;如果它是一個局部變量,它將在函數的堆棧幀中分配內存,如果它是一個全局變量,它將在程序啓動時在BSS段中分配(具體細節取決於實現,但這是典型的方式)。
在另一方面,如果使用:
int *arr = malloc(n * sizeof(int));
陣列的大小是動態的 - 這取決於變量n
的當前值,其可以依賴於程序輸入和其它狀態。您也可以使用realloc()
更改陣列的大小。
+0
如何在靜態和動態分配內存? –
相關問題
- 1. 靜態結構和普通結構有什麼區別?
- 2. 結構和靜態結構有什麼區別?
- 3. C中的靜態和動態數組有什麼區別?
- 4. 爲.NET構建靜態和動態語言有什麼區別?
- 5. 靜態結構方法和靜態類方法有什麼區別?
- 6. 有什麼區別bettwen靜態和動態變量在C#中?
- 7. 動態和靜態生成的grpc代碼有什麼區別?
- 8. 靜態,內部和公共構造函數有什麼區別?
- 9. 靜態SQL和動態SQL有什麼區別?
- 10. 靜態庫和動態庫之間有什麼區別
- 11. 靜態單元格和動態原型有什麼區別?
- 12. 靜態函數與類的靜態指針有什麼區別
- 13. 靜態類和非靜態類有什麼區別?
- 14. 靜態對象和靜態字段有什麼區別?
- 15. 靜態方法和非靜態方法有什麼區別?
- 16. 公共靜態,公共和靜態方法有什麼區別?
- 17. Swift中靜態函數和非靜態之間有什麼區別?
- 18. 非靜態類中的靜態方法和靜態類中的靜態方法有什麼區別?
- 19. C++這個數組的靜態和動態分配有什麼區別?
- 20. 靜態變量和靜態變量的區別是什麼?
- 21. ()和[]動態分配有什麼區別?
- 22. iOS項目中Xcode的動態和靜態分析器有什麼區別?
- 23. java/oops中的靜態變量和動態變量有什麼區別?
- 24. 本練習中的靜態和動態範圍界定有什麼區別?
- 25. 靜態與動態綁定 - 有什麼區別?
- 26. 是什麼區別靜態和非靜態全局
- 27. Java中靜態初始化和動態初始化有什麼區別?
- 28. 數據模型和數據結構有什麼區別?
- 29. 動態鏈接和動態加載有什麼區別
- 30. c + +動態綁定和java動態綁定有什麼區別?
靜態還是動態是什麼?哪種語言?這是一個特定的編碼問題還是一般好奇心?就目前來看,你的問題是無法回答的。 – Tommy
它的一般好奇心 –