C字串函式和命令列引數的學習心得

2021-07-09 20:14:46 字數 1090 閱讀 7171

1.字串排序:

由於在學校已經學過了兩種(冒泡和選擇)排序方法,所以這一章學起來毫無壓力,簡而言之,就是使用排序演算法對乙個二維陣列的第一維進行排序。由於字串基於陣列處理,所以對字串進行排序實際上是對指向每個字串的指標進行排序。

2.命令列引數:

學了半個多學期的c今天終於知道main的引數到底是什麼了。如先前所想的,函式的呼叫者必須向函式介面傳遞符合的引數,main作為c程式的入口,其呼叫者顯然不能是其他函式,呼叫main實際上就是執行了這個c程式,換句話說,c程式是被系統使用者選擇執行的,所以其實是作業系統呼叫了main。那麼問題來了:在圖形介面作業系統下使用者要怎麼向乙個函式傳遞引數呢?(不是雙擊就可以開啟了麼........)圖形操作介面不可以,不代表終端也不可以,由於c古老的歷史,windows還在吃奶的時候c就已經開始制定標準了,那時候主流的作業系統是命令列作業系統,例如dos啥的。執行乙個程式必須輸入乙個命令,命令之後也可以新增一些其他的字元,這些除了呼叫程式命令之外的額外字元就是c的引數了。

依據慣例,main的兩個引數被分別命名為argc和argv(我至今沒能理解這兩個引數名稱的英文含義......),一般來說,main的宣告如下

int main (int argc, char* argv)
argc是向main傳遞字串的數量,argv是向main傳遞字串的具體內容。例如:

那麼,後面的附加內容被儲存到了程式中並被反映出來。實際上,這些引數和一般的函式介面的使用方法是一樣的,並沒用想的那麼玄乎。理解之後,main的引數也就不那麼難了。

思考:如果我在寫命令的時候沒有在後面加上額外內容的話,會不會發生介面不正確的事?

試驗一下:

還是可以執行的,只是其他內容沒有了而已。

看起來這個介面沒有那麼嚴格嘛。。。。。。。。

命令列選項 字串 模擬

時間限制 1.0s 記憶體限制 256.0mb 問題描述 問題描述 請你寫乙個命令列分析程式,用以分析給定的命令列裡包含哪些選項。每個命令列由若干個字串組成,它們之間恰好由乙個空格分隔。這些字串中的第乙個為該命令列工具的名字,由小寫字母組成,你的程式不用對它進行處理。在工具名字之後可能會包含若干選項...

C語言 主函式引數(命令列引數)

include argc 為命令列引數的個數,全稱argument count引數個數 ar 命令列引數的內容,全稱argument variant引數變數 intmain int argc,char ar 將以下 儲存為tmp.c,用vc 6.0進行build 編譯 在tmp.c目錄下,找到tmp...

C命令列引數 main函式的引數含義

c中的命令列引數 又叫位置引數,它可以被傳到程式裡面,派各種用途 我們先來看main函式的引數 int main intargc,char argv char envp main 函式的引數就是通過命令列來進行傳參的 vs2013傳參方式 專案 屬性 配置屬性 除錯 命令列引數,然後進行傳參。arg...