c 基礎學習

2021-08-19 22:05:45 字數 863 閱讀 8578

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...