c編譯參數
① 求助,如何修改gcc的CFLAG等編譯參數
但有時候,我們還是需要讓make命令帶入一些參數給makefile腳本。比如,你在代碼裡面需要定義一個宏DEBUG來打開調試開關,代碼如下:int main(){int i=9;#ifdef DEBUGi=1;#elsei=0;#endifprintf("i=%d\n", i);return 0;}一般來說,這個宏定義可以
② c語言主函數中的參數有什麼用舉例說明
C語言的帶參數的main函數格式為main(intargc,char*argv[]),其中argc為參數個數加1,argv為參數列表,從argv[1]開始。編譯後生成可執行文件,可以在執行的程序後加參數,比如編譯一個程序為test.exe,則在執行時可以輸入:
test.exe1firestone
在這里,argc等於3,argv[0]為"test.exe",argv[1]為"1",argv[2]為"firestone"。
如果有下面的程序:
#include<stdio.h>
voidmain(intargc,char*argv[])
{
printf("You'veinput%dparameters. ",argc-1);
for(inti=1;i<argc;i++)printf("TheNo.%dis:%s ",i,argv[i]);
}
則上面的輸入會產生如下運行結果:
You'veinput2parameters.
TheNo.1is1
TheNo.2isfirestone
③ cmake中怎樣設置gcc的編譯參數
在configure的時候,加上–host=arm-linux,結果沒有實現我們要的效果,沒有將編譯器從默認的 gcc改成arm-linux-gcc,編譯器還是用的默認的gcc: [crifan@localhost lrzsz-0.12.20]$ CFLAGS=-O2
④ C寫windows程序用gcc編譯生成時,命令行加參數-lgdi32,在程序中寫什麼代碼去掉參數
編譯方法:格式 gcc [option] [sourcefilename]常用的選項最簡單的是:gcc hello.c默認的情況下將生成a.out的可執行性文件,
只需要在終端上輸入./a.out就可以看到執行的結果,如果你想指定生成目標文件的名字那麼你可以加上 -o選項,命令如下:gcc -o hello hello.c
命令:gcc -c hello hello.c
⑤ cmd調用gcc編譯c源碼,並傳參
下面將通過對一個程序的編譯來演示整個過程。
1
2
3
4
5
6
7
#include <stdio.h>
int main()
{
printf("happy new year!\n");
return 0;
}
1:預處理:編譯器將C程序的頭文件編譯進來,還有宏的替換,可以用gcc的參數-E來參看。
命令:gcc -E hello.c -o hello.i
作用:將hello.c預處理輸出hello.i
2:編譯:這個階段編譯器主要做詞法分析、語法分析、語義分析等,在檢查無錯誤後後,把代碼翻譯成匯編語言。可用gcc的參數-S來參看。
編譯器(ccl)將文本文件hello.i 翻譯成文本文件hello.s, 它包含一個匯編語言程序。匯編語言程序中的每條語句都以一種標準的文本格式描述了
一條低級機器語言指令。
⑥ linux c 編譯加什麼參數 可以gdb
Linux C編譯命令是gcc,gcc加上一個-g參數,編譯出來的程序才能帶有gdb的調試信息,才能用gdb調試。不光是gcc編譯命令,編譯C++程序的g++命令也是用-g選項來表示編譯出的程序要帶上gdb調試信息。