1.關於庫函式的呼叫,使用strcmp(),strcpy(),strcat()等函式,需要加上#include,還有值得注意的一點是,在呼叫strcpy時,假設你寫了正常的呼叫語句,如strcpy(str1,str2),編譯器仍會報錯,則可能需要使用更安全的strcpy_s() 相關詳解
2.字元的輸入可使用cin.get(),和c中gets()函式的用法差不多,如ar=cin.get(),可用於在多組字串的輸入中吸收無關字元(如輸入資料後的回車擊鍵)。而字串的輸入可以使用cin.getline()函式,該函式使用規則:cin.getline()實際上有三個引數,cin.getline(接受字串到m,接受個數5,結束字元),當第三個引數省略時,系統預設為'\0' 是'/n'吧。相關詳解
示例**
int repeat,i;
char c,ar,str[100];
cin>>repeat;//輸入迴圈次數
for(i=1;i<=repeat;i++)
3.字元和字串的輸出,使用cout即可,輸出字串記得要用字元陣列的首位址(即函式名)。值得一提的是在c語言中,%g的作用(詳解)
還有就是強制轉換(type)可以用於浮點數的取整數部分的運算,下面的**可以將實數分為整數部分和非整數部分兩部分。
#include void splitfloat( float x, int *intpart, float *fracpart );//用於將實數拆分成整數部分和小數部分
int main()
void splitfloat( float x, int *intpart, float *fracpart )
else
}
4.在這裡提一下,指標陣列的使用。示例如下:
const char*week[7]=;
其實在這裡我有一些疑惑,把char*前的const去掉,編譯器會報錯????相關用法和說明
5.無形參和實參的自定義函式使用
如無返回值:
宣告:void a(void);
定義:void a(void){}
呼叫:a(); 或 a(void);
有返回值就把void換成相應型別即可
6.關於string型別(相關詳細內容)
(和陣列很像)甚至可以如下這麼操作:
string name="ycy"
name="this is"+name;//輸出 this is ycy
還可以使用函式
#include #include using namespace std;
int main()
下面這段**可以完成string型別的a與char型別的temp陣列的連線,並把得到的新字串儲存在a中
字串(字元陣列和string都可)的連線可使用strcat函式:strcat(str1,str2),把str1的尾和str2的頭連線,並把新字串儲存到str1中。
string型別的連線:str1=str1+str2(str1必須放前面)
#include#includeusing namespace std;
string a="hello",b="1";
char temp[100]="world";
int main()
;void ininode(node** head)//準初始化函式
else cout << "succeed!" << endl;
(*head)->next = null;//該鍊錶有頭結點
}node* getnode(int item)//建立動態節點(存有資料)
newp->data = item;
newp->next = null;
return newp;
}void insetafter(node* p, node* newp)//後插運算
void listinsert(node* head, int item)//將新增鍊錶結點按公升序插入
insetafter(p, newp);
}node* deleteafter(node* p)//後刪操作,刪除p後的結點
node* findnode(const node* h, int item)//查詢指定結點
return p;
}void listclear(node* h)//清表操作,清到只剩乙個頭結點的空單鏈表
cout << "clear!" << endl;
}void revert(node* h)//逆置鍊錶操作
}void disp(node* head)//展示鍊錶
}int main()
; ininode(&head);
for (int i = 0; i < 5; i++)
disp(head);
cout << endl;
revert(head);
disp(head);
listclear(head);
return 0;
}
9.初始化陣列
方法一:在定義int型別陣列時,如果寫成:
int a[1000]=;
此時,陣列中除了a[0]=1,其他元素全部被系統初始化為0
方法二:memset()函式,可用於多次初始化 memset函式(初始化)
c++語言中memset函式怎麼用?
#include#includeint main
9.關於常量的使用
·巨集定義
用 #define 定義識別符號的一般形式為:
#define 識別符號 常量 //注意, 最後沒有分號,識別符號常用大寫字母組成
·使用const關鍵字
整型常量定義:如:
const int max=1;
實型常量定義:如
//c編譯系統對實型常量不分float和double,都作double處理以更精確,也可以在實型常量後面加上字母f或f來指定其為單精度實型(float)
型實型常量)3.1415f(float型實型常量) .87l(long double型實型常量)
const double first=3.1415926;
const double second=3.1415926f;
10.關於inline關鍵字的使用 inline關鍵字的用法詳解
·宣告內聯函式時使用關鍵字inline
格式為:
inline 返回值型別 函式名(形參表)
宣告和函式體需要出現在呼叫之前,不允許先給出函式原型,在呼叫之後才給出函式體 C 學習心得
c 學習心得 c 是最難的語言 這個世界上最難的程式語言可能非 c 莫屬了。你千萬 不要以為 幾天就可以學好 c c 的學習曲線是相當 bt的,你可以看看 這篇文章 c 是一門很自由的語言,自由到了有點 bt和恐怖的地步 我甚至 認為c 並不是一門成熟的程式語言,因為太容易犯錯了。所以,你一定要在 ...
c 學習心得
1.typedef struct 結構體型別 c 提供了許多種基本的 資料型別 如int float double char等 供使用者使用。但是由於程式需要處理的問題往往比較複雜,而且呈多樣化,已有的 資料型別 顯得不能滿足使用要求。因此c 允許使用者根據需要自己宣告一些型別,使用者可以自己宣告的...
C 學習心得
我是乙個轉專業到計算機行業的,系統學習c 大概有兩年了,其中走了很多彎路,也陷入很多次迷茫,最近有一些新的感受,所以想總結下來,我所認為的學習一門語言所需要經歷的階段。當你覺得已經掌握大部分的語法知識後 60 以上 可以去看一些簡單專案的源 一方面學習別人解決問題的方式,另一方面是加深語法知識的印象...