原创 路由器,交換機,集線器

文章目錄1、路由器 router1.1 什麼是路由(route)1.2 路由器工作原理1.3 路由和交換之間的主要區別1.4 路由表(Routing Table)2、交換機2.1 以太網交換機工作原理3、集線器 hub3.1 hu

原创 C常用頭文件

文章目錄1、stdio.h2、string.h 1、stdio.h 序號 函數 功能 1 puts(str) 輸出字符串 2 gets(str) 輸入字符串(回車間隔) 2、string.h 序號

原创 安裝 VS2010 中文旗艦版

VS2010是我們經常使用到的一款性能強大的 集成開發環境(IDE),這裏安裝的是【中文旗艦版】: 下面 簡單介紹 安裝過程: 1、雙擊【setup.exe】,單擊【安裝 VS 2010】; 2、選擇【自定義安裝】,選擇【產品安裝路徑

原创 static,const

文章目錄1、static全局變量與普通全局變量有什麼區別?2、static局部變量與普通局部變量有什麼區別?3、static函數與普通函數有什麼區別? 參考博文:static全局變量與普通的全局變量 1、static全局變量與

原创 C++考點

文章目錄1、在C++程序中調用被C編譯器編譯後的函數,爲什麼要加extern "C"聲明? 1、在C++程序中調用被C編譯器編譯後的函數,爲什麼要加extern "C"聲明? C++語言支持函數重載,C語言不支持函數重載。函數被

原创 操作系統考點

文章目錄1、什麼情況下會出現 死鎖? 1、什麼情況下會出現 死鎖? 死鎖的發生必須具備以下四個必要條件: (1)互斥條件:指進程對所分配到的資源進行排它性使用,即在一段時間內某資源只由一個進程佔用。如果此時還有其它進程請求資源,

原创 排序算法專題:quickSort,choose,bubble

1、快速排序(升序) void quickSort(int sort[], int m, int n) { int k, t, i, j; if (m < n) { i = m; j = n + 1; k =

原创 預處理 專題

文章目錄1、頭文件中的 #ifndef/#define/#endif 作用?2、#include < >和#include " " 的區別。3、宏定義的優缺點 參考博客:#include ""和#include <>的區別 1

原创 不使用庫函數,實現 strcpy,strcat,strcmp

strcpy原型: char* strcpy(char* des,const char* source) { char* r = des; assert((des != NULL) && (source != NULL));

原创 遞歸 專題

文章目錄1、用一個表達式,判斷一個數X是否是2的N次方(2,4,8, …),不可用循環語句2、位運算實現兩個整數的加法運算(遞歸實現) 1、用一個表達式,判斷一個數X是否是2的N次方(2,4,8, …),不可用循環語句 (程序員

原创 全局變量 考點

文章目錄1、局部變量和全局變量 能否重名?2、如何引用一個已經定義過的全局變量?3、全局變量可不可以定義在可被多個.c文件包含的頭文件中?爲什麼? 1、局部變量和全局變量 能否重名? 能,局部會屏蔽 全局變量。在局部範圍使用全局

原创 指針 專題

文章目錄1、如何避免野指針2、什麼是大小端模式?請用C語言寫出判斷函數。3、指針的強制類型轉換 1、如何避免野指針 將指針初始化爲NULL,用完後也將其賦值爲NULL。 2、什麼是大小端模式?請用C語言寫出判斷函數。 大端模式

原创 error C4996: 'scanf': This function or variable may be unsafe.Visual Studio系列編譯器使用scanf函數報錯

VS2017寫C代碼出現: error C4996: ‘scanf’: This function or variable may be unsafe. Consider using scanf_s instead. To dis

原创 TCP/IP 各層的 數據格式

傳輸層及其以下的機制由內核提供,應用層由用戶進程提供(後面將介紹如何使用socket API編寫應用程序),應用程序對通訊數據的含義進行解釋,而傳輸層及其以下處理通訊的細節,將數據從一臺計算機通過一定的路徑發送到另一臺計算機。應用

原创 進程與線程:線程

2.2 線程 在傳統操作系統中 ,每個進程有一個地址空間和一個控制線程 。事實上,這幾乎就是進程的定義 。 不過,經常存在在同一個地址空間中準並行運行多個控制線程的情形 ,這些錢程就像(差不多) 分離的 進程 〈共享地址空間除外)