文章試讀
不拘乙個遍程式系列
:程式設計序不能乙個腦袋鑽到底,有時要學會變通,即所謂的曲線救國。一
、二、三、四
職場規劃:一些雜七雜八的職場感悟吧。不值錢的軟體人才
精力充沛與事業成功
讓係分來得更猛烈些吧
不值錢的系統分析師
經濟危機下大學生如何就業
我的詩歌:都是我的打油詩,但是很值得一讀。不要工作還衣食無憂之四難歌
香格里拉美人圖
寶寶:超可愛的小寶寶 寫部落格
考試培訓:主要是關於考研、軟考和等級的相關題解。2009考研試題分析
2023年12月程式設計師試題分析
2023年軟考備考全攻略
2023年5月程式設計師試題解析
有人問我,在父程序中malloc的記憶體空間,如果fork()後,到了子程序中,會不會在copy乙份出來?還是共用乙個空間?看程式:
執行結果:
[zyx@ymserver src]$ ../bin/t1
p=0x8ea0008 ccc
child p=0x8ea0008 ccc3333
father p=0x8ea0008 ccc444
[zyx@ymserver src]$ child p=0x8ea0008 ccc3333
最開始,記憶體塊的值是ccc,位址為0x8ea0008
後來,先執行子程序的 strcpy(p, "ccc3333"); 發現,記憶體值變成了ccc3333
再父程序 strcpy(p, "ccc444"); 發現,記憶體值變成了ccc444
那麼是不是子程序的值被改變了呢?不是,看最後,子程序讀取的記憶體值還是ccc3333,就可以知道,父子程序各有一片空間。
那麼為什麼p的位址都是乙個地方呢?那是因為這個位址是乙個虛擬的位址,每個程序都擁有自己的虛擬位址空間,不同程序的相同位址空間其實在物理上是不同的位址塊!
注:上面的程式沒有加上錯誤判斷,測試程式而已,不用加了。
關於fork的小問題
在閱讀apue的時候,試著在cygwin中測試乙個源程式,如下 1 include 2 include 3 include 4 include 56 define maxline 512 7 static void sig int int 8 int main int argc,char argv ...
關於malloc函式的用法
一,函式宣告 malloc 向系統申請分配指定size個位元組的記憶體空間。返回型別是 void 型別。void 表示未確定型別的指標。c,c 規定,void 型別可以通過型別轉換強制轉換為任何其它型別的指標 如果分配成功則返回指向被分配記憶體的指標,否則返回空指標null。當記憶體不再使用時,應使...
關於malloc的返回位址
之前沒注意過malloc的返回值,今天又看到了這個位址空間說明,根據 linux unix系統程式設計手冊 的說明,當使用malloc申請比較小的空間時,返回值應該位於0x40000000以內,而當malloc申請的空間比較大時,會使用mmap的私有匿名對映實現,所以malloc的返回值應該大於0x...