原创 讀一個文件,從頭到尾的讀,不是一行一行的讀

想用正則匹配特徵,忽然想起不能一行行匹配,應該對文件從頭到位的匹配免得人家分在多行了匹配不到,通過百度知道了有這麼幾個好用的函數,或者說以前我木有用過的函數. feek:改變流的位置,int fseek(FILE *stream, lon

原创 堆棧的不同

堆和棧的區別 一、預備知識—程序的內存分配 一個由c/C++編譯的程序佔用的內存分爲以下幾個部分 1、棧區(stack)— 由編譯器自動分配釋放 ,

原创 strlen與sizeof的區別

Sizeof與Strlen的區別與聯繫 一、sizeof     sizeof(...)是運算符,在頭文件中typedef爲unsigned int,其值在編譯時即計算好了,參數可以是數組、指針、類型、對象、函數等。     它的功能是

原创 struct的對其規則

對齊: 現代計算機中內存空間都是按着byte劃分的,從理論上講似乎對任何類型的變量的訪問可以從任何地址開始,但實際情況是在訪問特定變量的時候經常在特定的內存地址訪問,這就是需要各類型數據按照一定的規則在空間上排列,而不是順序的一個接一個的

原创 struct與unin的區別

struct 簡單來說就是一些相互關聯的元素的集合,說是集合,其實它們在內存中的存放是有先後順序的,並且每個元素都有自己的內存空間。那麼按照什麼順序存放的呢?其實就是按你聲明的變量順序來存放的,下面先看一個例子: struct sTes

原创 ps查看進程

要對進程進行監測和控制,首先必須要了解當前進程的情況,也就是需要查看當前進程,而ps命令就是最基本同時也是非常強大的進程查看命令.使用該命令可以 確定有哪些進程正在運行和運行的狀態、進程是否結束、進程有沒有殭屍、哪些進程佔用了過多的資源等

原创 內連接與外連接

left join   :左連接,返回左表中所有的記錄以及右表中連接字段相等的記錄。 right join :右連接,返回右表中所有的記錄以及左表中

原创 析構函數爲虛函數

析構函數執行時先調用派生類的析構函數,其次才調用基類的析構函數。如果析構函數不是虛函數,而程序執行時又要通過基類的指針去銷燬派生類的動態對象,那麼用delete銷燬對象時,只調用了基類的析構函數,未調用派生類的析構函數。這樣會造成銷燬對

原创 修改SQL-SERVER數據庫表結構的SQL命令

修改SQL-SERVER數據庫表結構的SQL命令   向表中增加一個 varchar 列:   ALTER TABLE distributors ADD COLUMN address varchar(30);   從表中刪除一個字段:

原创 內存分佈,bss段/Data段/Text段/堆/棧

http://blog.csdn.net/imdxt1986/article/details/7975911 BSS段:BSS段(bss segment)通常是指用來存放程序中未初始化的全局變量的一塊內存區域。BSS是英文Block

原创 C++虛函數表解析

目錄(?)[-] 前言虛函數表一般繼承無虛函數覆蓋一般繼承有虛函數覆蓋多重繼承無虛函數覆蓋多重繼承有虛函數覆蓋安全性結束語附錄一VC中查看虛函數表附錄 二例程 C++ 虛函數表解析   陳皓 http://blog.csdn.net/

原创 c的有趣問題

12個有趣的C語言問答 0,gets() 方法 Q:以下代碼有個被隱藏住的問題,你能找到它嗎? A:這個不顯眼的問題就是使用了 gets() 方法。此方法接受一個string類型參數,但是卻沒有檢測此數值是否 有足夠的空間來拷貝數據。所

原创 static

【題目】static有什麼用途?   在網上流傳很廣的一個答案是: 1、限制變量的作用域 2、設置變量的存儲域     我覺得這樣答題是不妥當的,有點文不對題的感覺。   下面是我給出的答案: static 類型聲明符在C語言裏面主要有三

原创 大小端

http://blog.csdn.net/pochuanpiao/article/details/5756093     int i=1;       char *p=(char *)&i;       if(*p==1)   

原创 文件打開方式

http://zhidao.baidu.com/question/240626289.html r 以只讀方式打開文件,該文件必須存在。 r+ 以可讀寫方式打開文件,該文件必須存在。 rb+ 讀寫打開一個二進制文件,只