6 程式設計中注意幾點

2021-09-08 15:39:12 字數 1648 閱讀 6708

1、給

string

賦char*

型值,通過以下方式:

建構函式

string ( const char * s, size_t n );

string ( const char * s ); //要求

s指向的

c風格的字串必須以

'\0'

結尾。或用

assign

:string& assign ( const char* s, size_t n );

string& assign ( const char* s ); //同樣,以

'\0'

結尾或用

:operator=

string& operator= ( const char* s ); //同樣,s要以

'\0'

結尾。2、分配記憶體,要記得初始化;定義變數,也要初始化,否則將來可能遇到未知的結果。初始化分配的記憶體是乙個好習慣。

char c[112];

memset(c, 0, 112);

char *c1 = malloc(sizeof(char) * 4);

memset(c1, 0, sizeof(char) * 4);

int a = 1;

string.clear();

3、malloc()

函式和calloc()

函式的主要區別是

前者不能初始化所分配的記憶體空間,而後者能

。calloc()

函式會將所分配的記憶體空間中的每一位都初始化為零。

malloc()

函式和calloc()

函式的另一點區別是

calloc()

函式會返回乙個由某種物件組成的陣列,但

malloc()

函式只返回乙個物件。為了明確是為乙個陣列分配記憶體空間,有些程式設計師會選用

calloc()

函式。4、如果傳送給瀏覽器的資料的

html

格式有誤,瀏覽器是不會解析的。所以,當發現通過

socket

連線瀏覽器,傳送資料後,瀏覽器沒有反應,不一定是執行緒問題,可能是資料格式問題。

5、gcc

和g++

編譯函式的結果是不同的

(函式編譯後的改寫命名方式不同

)。所以,在一項工程中,最好統一大家的編譯方式。

6、編譯提示

reference to main

,可能是

makefile

沒有寫對,找不到

.o檔案。

7、開啟的檔案描述符一定要記得關閉,分配的記憶體,一定記得釋放。

8、cgi

的輸出,放在

body

中。ajax

不寫localhost,port

,不能跨域查詢。

9、chmod[2]

r(4),w(2),x(1),-(0)

有時候,乙個程序呼叫另乙個程序執行,你會發現沒有反應,可有可能是呼叫程序沒有執行另乙個程序的許可權,要開啟一下s。

set-user-id(suid) 啟用這個許可權,則該可執行檔案可以以擁有者的許可權來執行。

s,s。

10、做除法運算,一定要檢查除數是否為0。

參考【1】

Perl程式設計幾點注意

msgid imageid img id3154942 src res helpimg names as addressing.png width 4.1291in height 1.6709in localize true altid alt id3154942 example spreadshe...

螢幕程式設計中幾點注意

在乙個螢幕中,若它的下乙個螢幕是它本身,通常的狀態是pbo 螢幕 pai pbo,也就說一直在對當前螢幕的迴圈。1.要非常小心對一些內錶的清空,不要把上一次獲取的變數留到下一次中,這樣就重複了,就不是想要的結果了,除非你是故意要這麼做的。通常在usercommand module 中會有一系列對內表...

程式設計中注意的乙個問題

在程式設計中經常會碰到程式執行效率低的問題,而有時候問題時出在迴圈體中。我們通過下面乙個例子看在程式設計中要注意的問題。在這個例子中的 主要功能是定時檢查資料庫中的幾個表是否發生了更新,如果有更新則自動重新整理顯示視窗中的對應資料網格。檢查這幾個表的資料是否更新是通過判斷乙個資料表中對應表名的乙個標...