原创 原碼反碼補碼的簡單介紹

本文涉及到的數字及運算均基於8位bit下的值。 原碼、反碼、補碼均是計算機中對數字的二進制表示方法 原碼 原碼的最高位是符號位,其中1代表-,0代表+ 其他位表示該數的二進制絕對值 例如,我們用8位二進制表示一個數,+2的原碼

原创 Xiyoulinux group 17.18.19納新題知識點總結

三年納新題主要知識點總結 主要知識點 printf的返回值 sizeof操作符與字符串中的轉義字符(\) static關鍵字 const關鍵字 不同類型的數據在進行運算時發生的隱式自動類型轉換 結構的字節對齊 大小端 二維數組

原创 c語言二維數組a中,&a,&a[0],a[0][0]的值與值的類型

c語言二維數組中的一些表達式的值與意義的問題 前兩天寫代碼的時候遇到一些關於數組的問題,進而對二維數組進行了一些深入的思考。想到了一個有意思的問題。 在二維數組a中,&a,&a[0],&a[0][0]的輸出值都是一樣的爲什麼它所

原创 多線程同步的哲學家就餐問題c語言

問題描述: 五個哲學家共用一張圓桌,分別坐在周圍的五張椅子上,在桌子上有五隻碗和五隻筷子,他們的生活方式是交替地進行思考和進餐。平時,一個哲學家進行思考,飢餓時便試圖取用其左右最靠近他的筷子,只有在他拿到兩隻筷子時才能進餐。進餐畢

原创 線程池簡單理解

寫本文的目的就是作爲學習筆記,內容大部分參考網上資料 一.線程池基本原理 在傳統服務器結構中, 常是有一個總的監聽線程監聽有沒有新的用戶連接服務器, 每當有一個新的用戶進入, 服務器就開啓一個新的線程用戶處理這個用戶的數據包。這個

原创 生產者消費者c語言條件變量實現

問題描述 一組生產者線程和一組消費者線程共享一個初始爲空、大小爲n的緩衝區,只有緩衝區沒滿時,生產者才能把消息放入到緩衝區,否則必須等待;只有緩衝區不空時,消費者才能從中取出消息,否則必須等待。由於緩衝區是臨界資源,它只允許一個生

原创 Linux下實現自己的ls命令

主要功能 1.實現-l,-a,-R,-r 2.實現按文件類型以不同顏色顯示 主要知識 1.各種有關文件的系統調用函數 函數具體內容以及用法詳情參考Linux_c編程實戰第六章 2.運用二進制的思想來儲存與判斷參數 對於一個參數來講