原创 C++STL序列式容器---vector和list常用的接口用法以及vector和list的區別

序列式容器 一. vector : vector採用一段連續的內存來存儲其元素,向vector添加元素的時候,如果容量不足,vector便會重新malloc一段更大的 內存,然後把原內存中的數據memcpy到新的內存中,並free原內

原创 C++STL基本容器的使用

序列式容器 & 關聯式容器 C++中有兩種類型的容器:序列式容器和關聯式容器 序列式容器:主要有vector、list、deque等 vector表示一段連續的內存地址,基於數組的實現; list表示非連續的內存,基於鏈表實現的;

原创 C++中的String的常用函數用法總結

一. string的構造函數的形式: string str:生成空字符串 string s(str):生成字符串爲str的複製品 string s(str, strbegin,strlen):將字符串str中從下標strbegi

原创 四次揮手—服務器先關閉,客戶端不關閉,繼續發送數據,會出現什麼情況?

四次揮手—服務器先關閉,客戶端不關閉,繼續發送數據,會出現什麼情況? 觸發四次揮手機制: 服務器:發出FIN,客戶端回覆ACK,進入TIME_WAIT狀態 客戶端:沒有close(),處於close_wait()狀態,

原创 C++對string進行大小寫轉換

方法一: 使用C語言之前的方法,使用函數,進行轉換 #include <iostream> #include <string> using namespace std; int main() { string s = "ABC

原创 Shell腳本基礎—編寫腳本會遇到的各種問題

首先我們先理解一下 Shell bash Shell腳本的概念: 1. Shell & bash bash其實就是Shell的一種 2. Shell & Shell腳本 1. 兩者是不同的概念;Shell是命令行解釋器

原创 C語言—可變參數列表詳解

思維導圖總結: 相關的四個宏: #include<stdarg.h> void va_start(va_list ap, last); type va_arg(va_list ap, type); void va_end(va_li

原创 C++類的六個默認成員函數——思維導圖總結

相關的代碼: 無參構造函數 & 有參構造函數 #include <iostream> using namespace std; class Date { public: Date() { cout<<

原创 【C語言】筆記總結—思維導圖(超詳細!!!)

裏面有詳細代碼,想要原圖的小姐姐,小哥哥可以評論郵箱,我發給你們;裏面知識點,有錯誤的也可以告訴我哦

原创 C++實現最大堆和最小堆

堆 堆數據結構是一種數組對象,它可以被視爲一顆完全二叉樹結構(或者也有可能是滿二叉樹) 最大堆: 任一結點的關鍵碼均大於等於它的左右孩子的關鍵碼,其中堆頂的元素最大。(任一路徑中的元素升序排列) 最小堆: 任一結點的關鍵碼均小於等於

原创 【思維導圖】Python序列和字典---知識點總結

簡單總結: 詳細總結:

原创 Linux—虛擬機下如何查看系統是多少位的?32 or 64

方法一:uname -a 顯示結果是x86_64的是64位的,如果沒有就是32位的 下面這個是32位的: 下面這個是64位的: 方法二:getconf LONG_BIT 下面這個是32位的: 下面這個是64位的:

原创 模擬實現strlen,strcpy,strcmp,strstr,strcat,memcpy,memmove,memset

strlen 實現的方法: 使用 指針-指針 算出之間的差值,也就是這個字符串的真實長度 (指針-指針的要求就是:兩個指針是同一個類型) #define _CRT_SECURE_NO_WARNING

原创 vim的可視化模式—實現多行註釋,多行選中,多行刪除

首先我們應該清楚一個問題: vim一共有幾種模式? 12種 常用的三種模式: 在命令行模式下,實現替換7,8行的字符b,用字符a替換字符b 輸入:7,8s/b/a/g 其中:b就是舊的(之前的)字符

原创 TCP/IP協議模型

下面先通過我的另外一篇文章瞭解一下 TCP/IP協議模型 和 OSI參考模型 的對比: https://blog.csdn.net/qq_37941471/article/details/80459772 接下來我來從頂向下的介紹一下