原创 【C++】繼承、虛函數

  我們要清楚繼承的應用場景,爲什麼會引出繼承的概念? 1.要創建的新類與已有的類類似,只是多出幾個成員變量或者成員函數  2.當要創建多個類,它們擁有很多類似的成員變量或者成員函數時,可以把這些類共同的成員提取出來,定義一個基類,然後由

原创 【c++基礎】類和對象 四個默認函數

1.構造函數:初始化對象所佔內存空間(成員變量)   函數名與類名相等,不需要返回值      字符串賦值:需要開闢內存空間    mname = new char [strlen(name) + 1]();//對象在棧上開闢(由系統開闢

原创 變量,函數內存分佈---虛擬地址空間佈局

    int a = 10;        //全局變量,全局區。  全局變量初始化且初始化不爲0,存放在內存的.data段        int m;     //  全局變量初始化爲0或者未初始化,存放在.bss段     clas

原创 【題目分析】---- 逆序

給一個不多於5位數的正整數,要求: 1.求出它是幾位數 2.分別輸出每一位數字 3.按逆序輸出各位數字,例如原數爲321,應輸出123   判斷一個整數是幾位數 unsigned char GetFigures(int n) { unsi

原创 【Linux基礎】關於gcc的使用

在Linux 下使用gcc來編譯程序時,只需使用:(假設源代碼文件的文件名爲main.c) gcc main.c ./a.out 然而該過程可分解爲四步:預處理、編譯、彙編、鏈接。 1.預處理:gcc -E main.c -o main.

原创 I/O複用 —— 詳解epoll 及三種複用函數的比較

epoll是Linux特有的I/O複用函數。在實現上與select、poll有很大差異。它是使用一組函數來完成任務。 epoll將用戶關注的文件描述符上的事件放在內核裏的一個事件表中,從而無須像select和poll那樣每次調用都要重複傳

原创 LT模式和ET模式區別

LT模式:電平觸發 當epoll_wait檢測到文件描述符上有事件發生,並將此事件通知應用程序之後,應用程序可以不立即處理該事件,當下次調用epoll_wait時,還會嚮應用程序通知這個事件,直到此事件被處理。 如果用戶沒有處理就緒的文件

原创 求一個有序數組中兩個值相加爲k的數字,返回這兩個數字的下標。(騰訊面試題)

題目要求:求一個有序數組中兩個值相加爲k的數字,返回這兩個數字的下標。找到返回正常的下標,查找失敗返回-1   分析: 有序的數組(假設非降序),採取雙向遍歷,一個從前往後,一個從後往前,當前數字相加如果相等則返回,如果小於k則前面的繼續

原创 I/O複用 —— poll

poll系統調用和select類似,也是在指定時間內輪詢一定數量的文件描述符,以測試其中是否有就緒這 poll的原型: #include<poll.h> int poll(struct pollfd* fds,nfds_t nfds,i

原创 I/O複用 —— select

作者前言:在學習i/o複用前,我們要清楚爲什麼要引出I/O複用,它的的作用是什麼?什麼是I/O複用?I/O複用是怎麼實現的? -------  想一想噢~ 下面我來解釋一下這些問題 I/O複用的作用         從進程線程的學習,到多

原创 字符串替換詳解

字符串替換    1.一個換一個         函數將字符串中的字符'*'移到字符串的前部分,前面的非'*'         字符後移,但不能改變非'*'字符的先後順序,函數返回串中非'*'字符的數量。(要求儘可能的佔用少的時間和輔助空

原创 實現一個命令解析器

(1)從鍵盤獲取要執行的命令和參數,解析命令。用strtok (2)命令解析器fork複製自身,在子進程中替換爲要執行的命令  execv (3)執行wait等待子進程結束   execv而不用execl   命令實現: (1)內置命令

原创 c++支持的四種類型強轉

首先我們來了解一下c語言中的類型強轉 #include<stdio.h> int main() { int *p = NULL; char *q = NULL; q = p; return 0;

原创 【linux】 Daemon守護進程

一,守護進程 Linux Daemon(守護進程)守護進程也稱精靈進程(daemon)是生存期較長的一種進程。它們常常在系統自 舉時啓動,僅在系統關閉時才終止。並且它們沒有控制終端,是運行在後臺的一種特殊進程。 它獨立於控制終端並且週期性

原创 【C++】繼承

  我們要清楚繼承的應用場景,爲什麼會引出繼承的概念? 1.要創建的新類與已有的類類似,只是多出幾個成員變量或者成員函數  2.當要創建多個類,它們擁有很多類似的成員變量或者成員函數時,可以把這些類共同的成員提取出來,定義一個基類,然後由