1 size_t 可以跨平台,替代int或unsigned int,**擴充套件性更好
2 void bzero(void* s, int n)只能用於linux平台,最好使用跨系統的void memset(void * s, int c, size_t len
)。如果非要在windows下用,可以加上
#define bzero(a, b) memset(a, 0, b)
3 const_cast用於將const char*(如string.c_str())賦值給char*,解除const限制,如
string s="123456";
char* p=const_cast(s.c_str());
但const char* 卻可以直接賦值給char*
另外:c_str()函式返回乙個指向正規c字串的
指標, 內容與本string串相同.
這是為了與
c語言相容,在c語言中沒有
string型別,故必須通過string類物件的成員函式c_str()把string 物件轉換成c中的字串樣式。
注意:一定要使用strcpy()函式 等來操作方法c_str()返回的指標
比如:最好不要這樣:
char* c;
string s="1234";
c = s.c_str();
這樣才不會出錯,c_str()返回的是乙個臨時
指標,不能對其進行操作
char c[20];
string s="1234";
strcpy(c,s.c_str());
C 學習基礎
宣告 所謂宣告 declaration 是告訴編譯器某個東西的名稱和型別,而略去其他細節。函式的宣告揭示函式的引數型別和返回型別 定義 定義的任務是提供給編譯器宣告宣告時缺失的細節。對物件而言定義為物件分配記憶體,對函式而言提供 本體。初始化 initialization 就是為物件賦初值的過程。使...
C 基礎學習
goto 死迴圈 if else else if 猜數字 switch while bmi for 乘法口訣表 using system namespace fristlearn else 次。count switch 段位 console.writeline 您的段位是 switch count ...
C 學習基礎
for example int y void mymethod ref int y mymethod ref y out和ref類似 引數中需要顯示傳遞 給引數陣列提供形參 void test params int test test 1,2,3 inta test a 將函式形參位置調換入引數。i...