原创 單項鍊表的實現
mylist.h #define _CRT_SECURE_NO_DEPRECATE 1 #pragma once #include<stdio.h> #include<stdlib.h> #include<string.h> #i
原创 模擬實現string 增刪查改 比較大小
要求: 模擬實現c++庫函數裏面string的部分功能,實現增刪查改,比較預算符的重載 #ifndef __MySTRING_H__ #define __MYSTRING_H__ #define _CRT_SECURE_NO_DEPR
原创 Linux rm命令 回收機制
在linux在rm的使用頻率很高,誤刪,錯刪的情況自然避免不了,本人就曾經在錯誤的目錄下使用了 rm -rf ./* 命令 ,花了半天才把環境重新搭建好...... 所以建立一種可回退的機制就很有必要。
原创 類 和 對象 默認成員函數
類:class(數據+函數) 類是一種複雜的數據類型,它是將不同類型的數據和與這些數據相關的操作封裝在一起的集合體。這有點像C語言中的結構,唯一不同的就是結構沒有定義所說的“數據相關的操作”,“數據相關的操作”就是我們平常經常看
原创 信號 核心轉儲 gdb調試
信號: 使用kill -l 查看linux中的信號。 可以從上圖看出linux中一共有62個信號(沒有32,33)。1-31爲普通信號,34-64爲實時信號。我們主要關注前31個信號。每一個信號都有其
原创 selenium中webdriver.Chrome()的返回對象的session值詳解
1.代碼功能打開谷歌瀏覽器,並輸出返回的對象: from selenium import webdriver import time # 創建Chrome驅動程序的新實例 driver = webdriver.Chrome()
原创 關於linux中的死鎖
一:什麼事死鎖? 進程(線程)在執行過程中,因爭奪資源而造成的一種互相等待的現象,若無外力作用,它們都將無法推進下去。此時稱系統處於“死鎖”狀態或系統產生了死鎖,這些永遠在互相等待的進程(線程)稱爲死鎖進程(線程)。由於資源佔用
原创 鏈表 環形 生產者消費者模型
生產者消費者問題(英語:Producer-consumer problem),也稱有限緩衝問題(英語:Bounded-buffer problem),是一個多線程同步問題的經典案例。該問題描述了兩個共享固定大小緩衝區的線程—
原创 字符串操作函數解析
在編程的時候我們經常會用到一些庫函數來操作字符串,例如strcmp,strlen,strcat, strstr, strcpy, strchar , memcpy, memmov, memset 接下來我
原创 鏈表面試題 進階 二
一:1尋找兩條鏈表裏面的相同元素 2尋找兩條連表裏面不同的元素 (都不考慮帶環問題) 二:複雜鏈表的複製。一個鏈表的每個節點,有一個指向next指針指向下一個節點,還有一個random指針指向這個鏈表中的一個隨機節點或者N
原创 可變參數列表 va_list
可變參數列表,指的是函數的參數個數是可變的,但我們寫一個子函數實現某個功能的時候,我們通常通過實參和形參的形式把參數傳遞給子函數。而可當我們使用va_list變參數列表的時候形參和實參的傳遞就變得相對靈活了。我們通過兩個簡單
原创 關於管道
管道是進程間通信的方式之一 管道的分類: 1:匿名管道 :可用於血緣進程間通信 (比如 父子進程)。 2:命名管道:可用於任意兩個進程間通信。 匿名管道通信: 非親緣進程間利用管道通信:
原创 c++string的深拷貝
在c++中當我們想要去拷貝一個字符串的時候就會存在兩種方式: 1 淺拷貝方式 2深拷貝方式 淺拷貝: 所謂的淺拷貝就是讓當前的指針指向一塊已存在的區域,和其他指針共享同一
原创 鏈表面試題 進階
1.判斷單鏈表是否帶環?若帶環,求環的長度?求環的入口點? 2.判斷兩個鏈表是否相交,若相交,求交點。(假設鏈表不帶環) 3.判斷兩個鏈表是否相交,若相交,求交點。(假設鏈表可能帶環)【升級版】 1.判斷單鏈表是否帶環?若帶環,求環
原创 指針 指針數組 指針數組的指針 數組指針 數組指針的數組 函數指針 指向函數指針數組的指針
指針是c語言的靈魂所在,然而因爲其過於靈活,在使用的過程中難免出錯。接下來我們簡單分析一下常見的指針運用。 指針: 1 一級指針 char *p1 = “abcdef”; 2 二