原创 如何提高代碼質量

1.軟件產品質量軟件產品質量通常可以從以下六個方面去衡量(定義) :l         功能性(Functionality),即軟件是否滿足了客戶業務要求;l         可用性(Usability),即衡量用戶使用軟件需要付出多大的努

原创 C語言中結構體的直接賦值

比如:struct A{char v1[20];int v2;} a,b;a = b;這是沒有任何問題的賦值.struct B{char *v1;int v2;} c,d;c = d;這種結構體賦值,就需要注意(包括在C++裏)。對於指針賦

原创 C++ 命名空間

我就是喜歡簡簡單單的表達。使用命名空間的目的是對標識符的名稱進行本地化,以避免命名衝突。Namespace 關鍵字的出現就是針對這種問題的。由於這種機制對於聲明於其中的名稱都進行了本地化,就使得相同的名稱可以在不同的上下文中使用,而不會引起

原创 Makefile

在公司學到的Makefile。以前版:        CC = gcc CFLAGS = -I. DEPS = calc.h   all:server  #在這裏 加入 clean 就可以自動清除 == make clean %.o

原创 不要輕易相信make

有時候寫程序,出了問題便會寫一些打印信息,編譯Makefile.結果打印信息沒有出來,以爲程序出了問題,看監控程序一切正常;疑問?不解?結果是Makefile問題, make clean 在make,打印信息 刷刷的刷屏啊,切勿一直相信ma

原创 #if #elif #endif

原來還有#elif,代碼來了!文件: if_elif.c#include <stdio.h> #define A -1 int main(int agrc, char **argv) { #if A > 0     printf("A

原创 引用與指針區別

指針和引用的聯繫與區別  ★ 相同點: 1. 都是地址的概念; 指針指向一塊內存,它的內容是所指內存的地址;引用是某塊內存的別名。 ★ 區別: 1. 指針是一個實體,而引用僅是個別名; 2. 引用使用時無需解引用(*),指針需要解引用;

原创 Makefile

在公司學到的Makefile。以前版:        CC = gcc CFLAGS = -I. DEPS = calc.h   all:server  #在這裏 加入 clean 就可以自動清除 == make clean %.o

原创 C++ 命名空間

我就是喜歡簡簡單單的表達。使用命名空間的目的是對標識符的名稱進行本地化,以避免命名衝突。Namespace 關鍵字的出現就是針對這種問題的。由於這種機制對於聲明於其中的名稱都進行了本地化,就使得相同的名稱可以在不同的上下文中使用,而不會引起

原创 如何提高代碼質量

1.軟件產品質量軟件產品質量通常可以從以下六個方面去衡量(定義) :l         功能性(Functionality),即軟件是否滿足了客戶業務要求;l         可用性(Usability),即衡量用戶使用軟件需要付出多大的努

原创 C語言中結構體的直接賦值

比如:struct A{char v1[20];int v2;} a,b;a = b;這是沒有任何問題的賦值.struct B{char *v1;int v2;} c,d;c = d;這種結構體賦值,就需要注意(包括在C++裏)。對於指針賦

原创 關於C/C++ 結構體字節的算法

簡簡單單的答案,看例子。本人機器64位,指針8字節;32位,指針4字節。文件:sizeof.c#include <stdio.h> typedef struct SS{     char    name[131];     short  

原创 extern “C” 的使用

關於 extern “C”,我只寫實踐,簡單易懂。用於:C++ 需要用到C的庫和 .o文件 ,纔會用到,注意是 ‘庫’(動態庫,靜態庫)。注意:C++ 和.C 文件直接可以g++,但不能gcc。例: hello.c#include <std