第二章 字元和字串處理

2021-05-06 13:56:34 字數 631 閱讀 4909

一:  tchar c=text('a');

tchar szbuffer[100]=text("a string");

無論使用ansi還是unicode字元,編譯器都能通過編譯。

二:在使用winexec和openfile呼叫的地方,應該用createprocess和createfile呼叫來代替。

三:應當遵循的基本準則:

1、開始將文字字串想象為字元的陣列,而不是char或位元組的陣列。

2、用通用資料型別(如tchar/ptstr)來表示文字字元和字串。

3、用明確的資料型別(如byte和pbyte)來表示位元組、位元組指標和資料緩衝區。

4、用text或_t巨集來表示字面量字元和字串。

5、修改與字串有關的計算,例如,函式經常希望我們傳給他緩衝區大小的字元數,而不是位元組數,這意味著我們應該傳入_countof(szbuffer),而不是sizeof(szbuffer)。

6、避免使用printf系列函式,尤其是不要用%s和%s欄位型別來進行ansi和unicode字串之間的轉換,正確的做法是使用multibytetowidechar和widechartomultibyte函式

7、不要使用kernel32方法來進行字串的處理,比如lstrcat和lstrcpy。

求職寶典 第二章 字串

1.字串與子串 子串行 字串是由零個或多個字元組成的有限序列,子串的定義是串中任意個連續的字元組成的子串行,並規定空串是任意串的子串,任意串是其自身的子串,2.c風格字串 c 語言通常通過 char const char 型別的指標來 c語言中的風格字串。一般來說,我們使用指標的算數操作符來遍歷 c...

第二章簡單動態字串

1.sds的定義 在redis中的字串並不是使用c語言中的char陣列儲存,而是自定義了乙個結構體sds來儲存。redis set msg hello world ok integer 3 在上述例子中,不管是key還是val都是使用sds型別儲存。free屬性的值為0,表示這個sds沒有分配任何未...

第二章 簡單動態字串

在redis中,預設字串的表示型別是sds 簡單動態字串 c語言傳統的字串表示只在很少的情況下用到。sds結構 char buf 用於儲存字串,會在字串結尾自動新增乙個空字元,遵循c字串結尾的慣例,即用n 1字串陣列表示長度為n的字串 unsigned int len buf中已使用的長度,不包含自...