9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
學(xué)習(xí)啦 > 知識(shí)大全 > 知識(shí)百科 > 百科知識(shí) > Linux下C語(yǔ)言編程基礎(chǔ)知識(shí)

Linux下C語(yǔ)言編程基礎(chǔ)知識(shí)

時(shí)間: 謝君787 分享

Linux下C語(yǔ)言編程基礎(chǔ)知識(shí)

  在Linux下面,如果要編譯一個(gè)C語(yǔ)言源程序,我們要使用GNU的gcc編譯器。 以下是由學(xué)習(xí)啦小編整理關(guān)于Linux下C語(yǔ)言編程基礎(chǔ)知識(shí)的內(nèi)容,希望大家喜歡!

  1.源程序的編譯

  假設(shè)我們有下面一個(gè)非常簡(jiǎn)單的源程序(hello.c):

  int main(int argc,char **argv)

  {

  printf("Hello Linux\n");

  }

  要編譯這個(gè)程序,我們只要在命令行下執(zhí)行:

  gcc -o hello hello.c

  gcc 編譯器就會(huì)為我們生成一個(gè)hello的可執(zhí)行文件。執(zhí)行./hello就可以看到程序的輸出結(jié)果了。命令行中 gcc表示我們是用gcc來編譯我們的源程序,-o 選項(xiàng)表示我們要求編譯器給我們輸出的可執(zhí)行文件名為hello 而hello.c是我們的源程序文件。

  gcc編譯器有許多選項(xiàng),一般來說我們只要知道其中的幾個(gè)就夠了。 -o選項(xiàng)我們已經(jīng)知道了,表示我們要求輸出的可執(zhí)行文件名。 -c選項(xiàng)表示我們只要求編譯器輸出目標(biāo)代碼,而不必要輸出可執(zhí)行文件。 -g選項(xiàng)表示我們要求編譯器在編譯的時(shí)候提供我們以后對(duì)程序進(jìn)行調(diào)試的信息。

  知道了這三個(gè)選項(xiàng),我們就可以編譯我們自己所寫的簡(jiǎn)單的源程序了,如果你想要知道更多的選項(xiàng),可以查看gcc的幫助文檔,那里有著許多對(duì)其它選項(xiàng)的詳細(xì)說明。

  2.Makefile的編寫

  假設(shè)我們有下面這樣的一個(gè)程序,源代碼如下:

  /* main.c */

  #include "mytool1.h"

  #include "mytool2.h"

  int main(int argc,char **argv)

  {

  mytool1_print("hello");

  mytool2_print("hello");

  }

  /* mytool1.h */

  #ifndef _MYTOOL_1_H

  #define _MYTOOL_1_H

  void mytool1_print(char *print_str);

  #endif

  /* mytool1.c */

  #include "mytool1.h"

  void mytool1_print(char *print_str)

  {

  printf("This is mytool1 print %s\n",print_str);

  }

  /* mytool2.h */

  #ifndef _MYTOOL_2_H

  #define _MYTOOL_2_H

  void mytool2_print(char *print_str);

  #endif

  /* mytool2.c */

  #include "mytool2.h"

  void mytool2_print(char *print_str)

  {

  printf("This is mytool2 print %s\n",print_str);

  }

  當(dāng)然由于這個(gè)程序是很短的我們可以這樣來編譯

  gcc -c main.c

  gcc -c mytool1.c

  gcc -c mytool2.c

  gcc -o main main.o mytool1.o mytool2.o

  這樣的話我們也可以產(chǎn)生main程序,而且也不時(shí)很麻煩。但是如果我們考慮一下如果有一天我們修改了其中的一個(gè)文件(比如說mytool1.c)那么我們難道還要重新輸入上面的命令?也許你會(huì)說,這個(gè)很容易解決啊,我寫一個(gè)SHELL腳本,讓她幫我去完成不就可以了。是的對(duì)于這個(gè)程序來說,是可以起到作用的。但是當(dāng)我們把事情想的更復(fù)雜一點(diǎn),如果我們的程序有幾百個(gè)源程序的時(shí)候,難道也要編譯器重新一個(gè)一個(gè)的去編譯?

1284142 主站蜘蛛池模板: 国产偷窥熟女精品视频大全| 日韩精品三区二区三区| 国产av国片精品一区二区| 日本亚洲色大成网站www久久 | 精品不卡一区二区三区| 久青草精品视频在线观看| 五月婷婷久久中文字幕| 久久精品国产6699国产精| 国产亚洲精品AA片在线爽| 久久精品国产色蜜蜜麻豆| 成人午夜激情在线观看| 国产真实精品久久二三区| 国产精品爆乳奶水无码视频免费| 久久不卡精品| 乱妇乱女熟妇熟女网站| 97视频精品全国免费观看| 亚洲精品码中文在线观看| 中文字幕一区二区三区久久蜜桃| 久久这里只精品国产2| 伊人久久大香线蕉综合观| 激情伊人五月天久久综合| 99久久久无码国产精品免费| 国产成人一区二区三区在线观看| 亚洲欧美牲交| 成人免费无码视频在线网站| 亚洲永久精品ww47永久入口| 女同另类激情在线三区| 亚洲中文一区二区av| 4399理论片午午伦夜理片| 亚洲大尺度无码专区尤物| 日本不卡码一区二区三区| 国产精品入口麻豆| 国产首页一区二区不卡| 国产成人亚洲精品青草天美| 丝袜国产一区av在线观看| 亚欧成人精品一区二区乱| 日韩乱码人妻无码中文字幕视频| 亚洲成精品动漫久久精久| 国产高跟黑色丝袜在线| 精品超清无码视频在线观看| mm1313亚洲国产精品|