欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言命令行參數(shù)的使用詳解

 更新時(shí)間:2021年07月25日 08:50:58   作者:BigHerbert  
本文主要介紹了C語言命令行參數(shù)的使用詳解,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

     之前曾經(jīng)使用過很多次c語言的命令行參數(shù)了,但是總是每次使用的時(shí)候都不太確定,需要重新查資料,這次來個(gè)總結(jié)。c語言的命令行參數(shù)非常簡(jiǎn)單,只需要一個(gè)簡(jiǎn)單的例子就可以說明:

#include <stdio.h>
void main(int argc,char** argv)
{
        printf("%d\n",argc);
        printf("%s\n",argv[0]);
        printf("%s\n",argv[1]);
        printf("%s\n",argv[2]);
}

在上面的例子中,我們給main函數(shù)傳遞兩個(gè)參數(shù),argc和argv。argc是int類型的,它表示的是命令行參數(shù)的個(gè)數(shù)。不許要用戶傳遞,它會(huì)根據(jù)用戶從命令行輸入的參數(shù)個(gè)數(shù),自動(dòng)確定。argv是char**類型的,它的作用是存儲(chǔ)用戶從命令行傳遞進(jìn)來的參數(shù)。它的第一個(gè)成員是用戶運(yùn)行的程序名字。

     對(duì)于上面的例子,我們將其保存為test.c,用gcc編譯生成目標(biāo)文件為test,測(cè)試如下:

     (1)我們值在命令行下直接運(yùn)行程序,沒有傳遞其它任何參數(shù):

./test

      運(yùn)行結(jié)果如下:


     第一個(gè)輸出的是argc,因?yàn)槲覀冎惠斎肓?/test,所以argc為1,即只有一個(gè)命令行參數(shù)。后面輸出的第一個(gè)命令行參數(shù)也是./test。接著程序就出錯(cuò)了,因?yàn)楹竺嬉呀?jīng)沒有第二個(gè)和第三個(gè)參數(shù)了,在寫實(shí)際的應(yīng)用時(shí),應(yīng)注意對(duì)這一部分進(jìn)行容錯(cuò)處理。

     (2)我們?cè)诿钚邢螺斎耄?br />

./test hello world


     可以看到argc為3,第一個(gè)參數(shù)為./test,第二個(gè)參數(shù)為hello,第三個(gè)參數(shù)為world。

     (3)我們繼續(xù)輸入:

./test hello world hello world


     可以看到這時(shí),argc變?yōu)?,argv指數(shù)出了前面三個(gè)參數(shù),當(dāng)然還可以把后面的兩個(gè)參數(shù)也進(jìn)行輸出。

     如果命令行中傳遞的一個(gè)參數(shù)包括空格,就需要用用“ ”將參數(shù)擴(kuò)起來例如

./test "hello world" "hello world"


     我們將hello world整體當(dāng)作一個(gè)參數(shù)傳遞,就需要使用“hello  world”。

     需要注意的是argv的類型可以是char ** argv,char argv[ ][ ],char* argv[ ]。

到此這篇關(guān)于C語言命令行參數(shù)的使用詳解的文章就介紹到這了,更多相關(guān)C語言命令行參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 快速解決boost庫(kù)鏈接出錯(cuò)的問題(分享)

    快速解決boost庫(kù)鏈接出錯(cuò)的問題(分享)

    下面小編就為大家?guī)硪黄焖俳鉀Qboost庫(kù)鏈接出錯(cuò)的問題(分享)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • C語言中的5種簡(jiǎn)單排序算法(適合小白)

    C語言中的5種簡(jiǎn)單排序算法(適合小白)

    在編程練習(xí)時(shí)我們經(jīng)常會(huì)遇到一些將一串亂序的數(shù)字排列成有序的數(shù)列(遞增,遞減)的問題,以此起到解決問題的效果,下面這篇文章主要給大家介紹了關(guān)于C語言中的5種簡(jiǎn)單排序算法的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • C++實(shí)現(xiàn)ini文件讀寫的示例代碼

    C++實(shí)現(xiàn)ini文件讀寫的示例代碼

    這篇文章主要介紹了C++如何實(shí)現(xiàn)讀寫ini配置文件,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-05-05
  • 關(guān)于PCL出現(xiàn)"無法找到?pcl_commond.dll?文件程序無法執(zhí)行"的問題及解決方法

    關(guān)于PCL出現(xiàn)"無法找到?pcl_commond.dll?文件程序無法執(zhí)行"的問題及解決方法

    這篇文章主要介紹了PCL出現(xiàn)"無法找到?pcl_commond.dll?文件程序無法執(zhí)行"的問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • 簡(jiǎn)單比較C語言中的execl()函數(shù)與execlp()函數(shù)

    簡(jiǎn)單比較C語言中的execl()函數(shù)與execlp()函數(shù)

    這篇文章主要介紹了C語言中的execl()函數(shù)與execlp()函數(shù)的簡(jiǎn)單比較,是C語言入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-08-08
  • C語言輸入一個(gè)數(shù)判斷是否為素?cái)?shù)的多種方法

    C語言輸入一個(gè)數(shù)判斷是否為素?cái)?shù)的多種方法

    素?cái)?shù)是只能被1和它自己本身整除,不能被其他自然數(shù)整除的大于1的正整數(shù),下面這篇文章主要給大家介紹了關(guān)于C語言輸入一個(gè)數(shù)判斷是否為素?cái)?shù)的多種方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-04-04
  • C++示例講解觀察者設(shè)計(jì)模式

    C++示例講解觀察者設(shè)計(jì)模式

    觀察者模式是極其重要的一個(gè)設(shè)計(jì)模式,也是我?guī)啄觊_發(fā)過程中使用最多的設(shè)計(jì)模式,本文首先概述觀察者模式的基本概念和Demo實(shí)現(xiàn),接著是觀察者模式在C++中的應(yīng)用,最后是對(duì)觀察者模式的應(yīng)用場(chǎng)景和優(yōu)缺點(diǎn)進(jìn)行總結(jié)
    2022-12-12
  • C++實(shí)現(xiàn)高校教室管理系統(tǒng)

    C++實(shí)現(xiàn)高校教室管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)高校教室管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Matlab繪制有趣的羅盤時(shí)鐘的示例代碼

    Matlab繪制有趣的羅盤時(shí)鐘的示例代碼

    這篇文章主要介紹了如何利用Matlab實(shí)現(xiàn)繪制有趣的羅盤時(shí)鐘,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Matlab有一定的幫助,需要的可以參考一下
    2023-01-01
  • C/C++后端學(xué)習(xí)與練習(xí)深入

    C/C++后端學(xué)習(xí)與練習(xí)深入

    這篇文章主要介紹了C/C++對(duì)于后端的學(xué)習(xí)與練習(xí),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評(píng)論