C++語言支持函數重載,C語言不支持函數重載。函數被C++編譯後在庫中的名字與C語言的不同。假設某個函數的原型爲void foo(int x, int y)。該函數被C編譯器編譯後在庫中的名字爲_foo,而C++編譯器則會產生像_foo_int_int之類的名字。 C++提供了C連接交換指定符號 extern "C"解決名字匹配問題。
文章目錄1、棧和堆的區別2、隊列和棧的區別 1、棧和堆的區別 stack是棧,heap是堆。 stack的空間由操作系統自動分配/釋放,heap上的空間手動分配/釋放。 stack空間有限,heap是很大的自由存儲區。 C中的
文章目錄1、頭文件中的 #ifndef/#define/#endif 作用?2、#include < >和#include " " 的區別。3、宏定義的優缺點 參考博客:#include ""和#include <>的區別 1
文章目錄1、局部變量和全局變量 能否重名?2、如何引用一個已經定義過的全局變量?3、全局變量可不可以定義在可被多個.c文件包含的頭文件中?爲什麼? 1、局部變量和全局變量 能否重名? 能,局部會屏蔽 全局變量。在局部範圍使用全局
文章目錄1、什麼情況下會出現 死鎖? 1、什麼情況下會出現 死鎖? 死鎖是指兩個或兩個以上的進程在執行過程中,由於競爭資源或者彼此通信而造成的一種阻塞的現象,若無外力作用,它們都將無法推進下去。 死鎖的發生必須具備以下四個必要條