-
管道連接多個小程序
查看全部 -
gcc?-c?max.c?-o?max.o
部分文件編譯,先翻譯成不可執行的機器碼
//#include?"max.c"
在主函數文件中注釋掉編譯已完成的文件,不然會重復出現max()
gcc?max.o?hello.c
完成編譯
目的:節約時間(使編譯可以碎片化,不然單次編譯時間可能過長)
使用頭文件聲明函數,放入主函數文件預處理,方便查看函數返回值類型及參數類型。
查看全部 -
ls 表示查看磁盤目錄結構,ls /表示查看根目錄;ls /etc/表示文件配置目錄;| 表示管道,grep為查詢包含指定字符的行,例如ls /etc/ | grep ab,那么會輸出etc中包含ab的程序,管道相當于grep的輸入流;
ps -e? 查看進程;ps -e | grep ssh;
查看全部 -
重定向機制:把輸出流定向輸出到某個位置,例如文件中,./a.out 1>>a.txt則輸出不再顯示在屏幕上,而是顯示在a.txt中,但輸入仍然在鍵盤,且輸入顯示在屏幕上;2代表錯誤流,1代表輸出流,0代表輸入流,不寫默認為1;讀取a.txt命令為cat a.txt;>為覆蓋更新整個文件的重定向命令(如最新數據),>>為順序寫入文件的重定向命令,不會覆蓋原本的內容(如日志文件);把某個文件作為輸入流,例子命令為./a.out < input.txt? 1 >t.txt 2>f.txt?
默認情況下,標準輸入流為鍵盤輸入,標準輸出流為終端輸出,標準錯誤流為錯誤輸出,重定向機制可以改變默認情況,將流輸入或輸出到特定文件或位置;
查看全部 -
linux系統將外設當成一個個文件,程序處理后輸出到某個外設(文件夾),再由外設去處理;stdio.h 包括stdin、stdout、stderr三個文件,把默認鍵盤當做stdin文件,把默認顯示器當做stdout文件;
也可以向指定的文件輸出:fprintf(stdout,"please input the value a:\n")
//printf("please input the value a:\n"),向顯示器輸出
fscanf(stdin,"%d",&a);//scanf("%d",&a)=本質是從鍵盤文件stdin讀入a
fprintf(stderr,"the value must>0");return1;
查看全部 -
1、rm *.o? // 移除所有.o文件;
2、make 工具可以將大型的開發項目分成若干個模塊,清晰快捷整理源文件;約定寫一個文件:vi? Makefile#M大寫;在大項目中 如果每次編譯都需要將全部小文件編譯一次可能需要很久很久。make工具讓我們每次輸入make,只會自動處理需要修改的地方;
3、Makefile文件注釋用 “#”;
hello.out:max.o min.o hello.c? //max.o和min.o hello.c一起生成a.out文件
? ? ? ? gcc max.o min.o hello.c(行代碼前8個空格或代表8個空格的tab鍵)
max.o:max.c
? ? ? ? gcc -c max.c
min.o:min.c
? ? ? ? gcc -c min.c
執行make
hello.out:max.o min.o hello.c? -o hello.out
4、gcc -c 文件名 -o 命名.o //編譯文件,生成.o文件
gcc -c 文件名 -o 命名.out //編譯文件,生成.out執行文件
查看全部 -
一、函數可以先編譯成.o文件,然后再和主函數文件一起編譯成可執行文件。在源代碼多的時候可以提高效率。例如:1、gcc-c min.c -o min.o 2、gcc min.o hello.c?
二、cat+文件名 命令可以查看源代碼。?
三、.o文件為機器碼,可以編寫一個.h文件,然后在主文件中進行預處理聲明 #include".h"。 通過cat +.h文件別人就可以知道你編寫的函數的類型及參數。
四、.c C語言源代碼 .o編譯過的二進制機器碼文件 .h函數說明文件(沒有源代碼時,看.h就知道函數使用方法)PS:.h沒有實際代碼作用,僅供查看。
五、把不常改動的函數,類和框架提前編譯好生成靜態庫(.o文件,減少主函數編譯時間)
查看全部
舉報