C語言相關 實習筆記

2021-06-09 14:54:57 字數 1951 閱讀 7532

1 產生隨機數:

#include

srand(time(null));

number = rand() %100 + 1;

2 strstr: 

eg: p = strstr(s1,s2);    //從字串s1中尋找s2第一次出現的位置,返回指向第一次指向s2位置的指標,如果沒有找到,返回null。

strchr:

eg:p = strchr(s1,'c');  //查詢字串s1中首次出現字元c的位置,返回首次出現字元c的指標,如果s1中不存在c,則返回null。

3 sizeof(陣列名)/sizeof(陣列名[0])    //得到陣列的大小(長度)

4 scanf:

1) scanf("%*[^\n]");              scanf("%*c");   //清髒資料

2) scanf("%*d%d", &x);    //跳過第乙個輸入的資料

3) scanf("%[a-z]%[^a-z]", str, str1);   //%[a-z]:表示字母     %[^a-z]:表示非字母

5 printf

printf("%c, %*c\n" , 'a', n , 'a' ); //列寬,其中n是數字或者int型的變數

6 流:

1)檔案指標:file  * fp;                        stdin,stdout,stderr

檔案操作:fopen函式

"r"   :開啟檔案用於讀 "w

"  :開啟檔案用於寫

"a"  :開啟檔案用於追加

"r+" :用於讀寫,從頭開始

"w+":用於讀寫,檔案存在就截去

"a+":用於讀寫,檔案存在就追加

fclose():關閉檔案

remove():刪除檔案

rename():檔案重新命名

2)getc/putc   :讀取字元

eg:while((ch = getc(fp)) != eof) 

3)  ungetc:將剛從流中讀入的字元放回到流

eg:讀入數字,並在首個非數字時停止操作

while( isdigit(ch=getc(fp)) ) 

ungetc(ch,fp);

7 make:

1) makefile檔案:(#號開頭的為注釋)

eg:main:main.o module.o

|<-tab->|gcc main.o module.o -o main 或:

main:main.o module.o;gcc main.o module.o -o main

將makefile檔案及原始檔和標頭檔案放在當前目錄下,執行命令make 自動編譯

一般情況下,makefile只能命名為makefile或者makefile,若定義為別的名字,則執行時需要使用-f指定:

eg:make  -f othername

或:make  --file= othername         

2)make命令引數詳解:

-c  dir:(或者 --directory = dir  切換目錄再執行)

-d  :列印出所有的除錯資訊

-e :或者--environment - overrides:不允許在makefile中對系統環境變數重新賦值

-i:或者 --ignore - errors:忽略makefile中命令時產生的錯誤,不退出make

-h:或者 --help:列印幫助資訊

-k:或:--keep - going:遇到錯誤時不終止make的執行,盡可能多的執行所有命令,直到遇到致命錯誤才終止

-s:或者 --slient:執行但不顯示所執行的命令。

-t :或者 --touch:把所有目標檔案的最後修改時間設定為當前系統時間

-v :或者 --version:列印出make的版本資訊

C語言相關知識筆記

一 gcnew與new的區別 c cli中使用gcnew關鍵字表示在託管堆上分配記憶體,並且為了和以前的指標區分,用 來替換 就語義上來說他們的區別大致如下 1.gcnew返回的是個控制代碼 handle 而new返回的是實際的記憶體位址.2.gcnew建立的物件由虛擬機器託管,而new建立的物件必...

C 語言 常量相關知識筆記

1.常量是一種識別符號,值在執行期間不變。2.c 語言可以用const定義常量和 define定義常量 稱為巨集常量 常量增加了程式的可讀性,使程式使用起來更加方便 如果程式中需要在多個地方改動字串或數字,容易出錯 使其不易出錯。盡量使用含義直觀的常量表示程式中多次出現的字串或數字,比如 defin...

《C語言筆記 指標相關(一)》

一,野指標問題 1,什麼是野指標?野指標就是指標指向了乙個不可知的位置 隨機的 不正確的 限制訪問的 2,會造成什麼危害?第一種情況,指向乙個不可訪問的位址 比如核心空間 會觸發段錯誤,這種算是最好的情況。第二種情況,指向乙個可用的但是沒有什麼特別意義的空間 比如說曾經使用過但已經不用了的棧空間或堆...