原创 【C++】多態(三)-------虛擬繼承和菱形虛擬繼承(帶有虛函數)

1.菱形繼承(帶有虛函數)(1)派生類未增加新的虛函數class B { public: virtual void TestFunc1() { cout << "B::TestFunc1" << endl; } virtual

原创 linux中重要的目錄和命令

重要目錄:/proc, /sys, /SElinux, /bin, /usr/lib, /usr/local, /var, /tmp(1)/proc: 特殊文件目錄。此目錄的數據都在內存中,如系統核心,外部設備,網絡狀態,由於數據都存放於

原创 模擬實現printf

要求:能完成下列函數的調用print("sccc d.\n","hello",'b','i','t',100); print函數原型:print(char*format, ...) printf函數原型:int printf( const

原创 三字棋遊戲

 簡單寫了一個三字棋,實現瞭如下一些簡單的功能。(1)棋盤的初始化(2)棋盤的打印(3)玩家下棋(4)電腦下棋(電腦可以對玩家下的棋堵)(5)判斷輸贏 分爲test.c(測試文件),game.c(遊戲的實現函數),game.h(遊戲的頭文

原创 函數的棧幀

這篇文章簡單描述了函數的棧幀和調用過程,通過一段代碼來進行分析: #include<stdio.h> int Add(int x, int y) { int z = 0; z = x + y; return z; } int m

原创 實現進度條程序. 通過makefile進行編譯

在Linux系統下寫了一個簡單的進度條實現程序,並通過makefile進行編譯1.在proc_bar.c中編寫代碼如下:#include <stdio.h>

原创 使用命令安裝gcc/g++,vim和gdb

Linux中使用gcc/g++來編譯程序,使用gdb來調試程序,vim來編寫程序,這些工具都可以進行配置和安裝。1.vim在命令行中輸入vi可以查看vim的信息,信息如下:我們可以通過cd~到當前工作目錄下,然後通過ls-al來查找一個名

原创 淺談C語言操作符

C語言操作符分類:算術操作符移位操作符位操作符 單目操作符 邏輯操作符 關係操作符逗號表達式下標引用、函數調用和結構成員1.算術操作符+   -   *   /    %(1)/操作符,若兩邊的操作數都爲整數則執行整數運算;若兩邊操作數

原创 可變參數列表源碼的理解與剖析

C語言中的可變參數:通過將函數的實現爲可變參數的形式,使函數可以接受一個及一個以上的參數,參數個數不固定例如:實現一個函數可以求任意個參數的平均值 #include<stdio.h> #include<stdlib.h> #include

原创 掃雷

用C語言寫了一個簡單的掃雷項目。實現了一下幾個功能 (1)佈置雷 (2)排雷(如果當前座標不不是雷雷,當前座標的周圍也沒雷雷,就會向外擴展搜索。) (3)踩雷,炸死(第一次踩雷不被炸死) (4)排雷成功判斷 實現原理: 雷的信息存儲和排查

原创 淺析指針數組,數組指針,函數指針,函數指針數組,指向函數指針數組的指針

對於指針有幾個比較難的概念,下面做一些簡單的分析:數組指針:是指針,該指針有能力指向一個數組指針數組:是數組,是一個存放指針的數組函數指針:是指針,該指針有能力指向一個函數函數指針數組:是數組,是一個存放函數指針的數組指向函數指針數組的指

原创 轉移表(函數指針數組)和回調函數(通過函數指針調用的函數)

上一篇文章簡單介紹了函數指針和函數指針數組,本篇文章是介紹他們的用途。函數指針數組的用途-----轉移表:通過轉移表來實現一個簡單的計算器代碼如下:#define _CRT_SECURE_NO_WARNINGS 0 #include<st

原创 【C++】多態(二)---------多態的調用原理和帶有虛函數的對象模型

環境:win10+vs2015爲什麼派生類對基類的虛函數進行重寫後,通過基類對象的指針或引用來調用該虛函數,就可以實現多態呢?我們來探究一下多態的調用原理吧!1.多態的調用原理:如下代碼:#include<string> class B

原创 棧和隊列面試題

本篇博客列舉和實現了關於棧和隊列的一些面試題:1.實現一個棧,要求實現Push(出棧)、pop(入棧)、Min(返回最小值)的時間複雜度爲O(1)2.使用兩個棧實現一個隊列3.使用兩個隊列實現一個棧4.元素出棧,入棧的合法性。如入棧的序列

原创 【C++】多態(一)

     這篇博客簡單介紹了多態的概念,分類,動態多態實現的條件,重寫等幾個方面,希望能夠加深對於多態的理解。1.概念多態:指的是同一個事物的多種表現形態2.多態的分類分爲:1)靜態多態:編譯器在編譯期間來確定程序的行爲(確定具體調用哪個