原创 C語言基礎——進制轉換 / 數據表示

第一部分:進制轉換 二進制:由0~1構成,逢2進1 八進制:由0~7構成,逢8進1 十六進制:由0~9、A~F構成,逢16進1 兩個基本概念 基數:n進制基數爲n 123.4 = 1*10^2 + 2*10^1 + 3*10^0 +

原创 Linux -- 進程間通信之管道

管道是Linux裏的一種文件類型,同時也是Linux系統下進程間通信的一種方式 創建一個管道文件有兩種方式: 1.  Shell 下命令 mkfifo + filename,即創建一個有名管道 2.  C語言裏調用 pipe( ) 函數

原创 遷移至新的博客,歡迎交流學習 :)

https://www.cnblogs.com/chenxinshuo/

原创 Linux -- 進程管理之殭屍進程

      UNIX 存在一種機制:在每個進程退出的同時,操作系統釋放該進程所有資源,但仍然保留一定的信息(PID / Status / runtime),直到父進程wait() / waitpid(), 以便父進程得到子進程狀態信息;

原创 C++面試問題總結 1

/* scanf / printf 的返回值是什麼? */ int scanf (const char *restrict format, ...) scanf函數返回成功讀入的數據項數,讀到文件末尾出錯則返回EOF int prin

原创 C++面試問題總結 3

/* 用戶態與內核態之間如何切換? */ 系統爲了限制不同程序的訪問能力,防止它們獲取別的內存數據,劃分了兩個等級  內核態與用戶態 內核態:CPU可以訪問內存所有數據, 包括外圍設備, 例如硬盤, 網卡. CPU也可以將自己從一個

原创 C++面試問題總結 2

/* 什麼是缺省函數?C++的類中有哪些缺省函數?*/ 缺省函數是C++聲明一個類後編譯器默認生成的函數(如果未定義的話) 共有六個缺省函數 1. 缺省構造函數 2. 缺省拷貝構造函數 3. 缺省析構函數 4. 賦值運算符 5.

原创 Linux -- 進程間通信之信號量

多個線程同時訪問一個共享數據,很可能造成惡劣的後果。 爲了保證數據訪問資源的正確性和安全性,需要對線程進行“同步”。 (Linux下所有的執行實體都稱爲任務(task),每個任務類似於單線程的進程,共享了同一個內存空間的多個任務構成了一個

原创 Linux -- 進程管理之fork() 函數

for(int i = 0; i<2; i++) { if(fork() == 0) printf("A\n"); else printf("B\n"); } for(int i =

原创 Linux -- 信號發送實現

信號是Linux系統響應某些條件而產生的一個事件,接收該信號的進程會響應地採取一些行動。       

原创 TCP長連接與短連接的區別

1. TCP連接 當網絡通信時採用TCP協議時,在真正的讀寫操作之前,server與client之間必須建立一個連接,當讀寫操作完成後,雙方不再需要這個連接時它們可以釋放這個連接,連接的建立是需要三次握手的,而釋放則需要4次握手,所以

原创 C++ 之引用

引用又稱“別名”,對引用的操作相當於對原變量操作 int a = 10; int &b = a;    // b就是a的引用,改變b就是改變a *注意* 1. 沒有空引用,定義引用時必須初始化 2. 不能有引用的引用,引用不分級

原创 Linux -- 進程間通信幾種方式的總結

一、 管道 優點: 1. 管道文件不佔磁盤空間,打開管道時在內存中分配空間; 2. 管道讀端會在讀取完管道內數據後自動進入阻塞,直到寫端再次寫入數據; 缺點: 1. 管道是半雙工的,數據只能從一個方向上流動; 2. 管道大小PIPE_S

原创 C語言(一)——變量

常用變量類型 地址 小端  :低地址保存低位   高地址保存高位               常用於   Inter  PC    /  複雜指令集    大端:低地址保存高位    高地址保存低位             常用於

原创 Linux 複習筆記

Linux 常用基本命令: 文件 —— cp  rm  mv  tail  mv  more  find  grep 進程 —— ps  kill  jobs  top 管理 —— useradd  userdel  passwd  sh