```
if((g_token.rule_type_code,"-1")!= 0) {
// 這句是錯的,修改為
if(strcmp(g_token.rule_type_code,"-1") != 0) {
// strcmp函數(shù)是比較兩個字符串的大小,返回比較的結(jié)果
// 一般形式是:i=strcmp(字符串1,字符串2)
// 其中,字符串1、字符串2均可為字符串常量或變量;i是用于存放比較結(jié)果的整型變量
// 比較結(jié)果是這樣規(guī)定的:
// ①字符串1小于字符串2,strcmp函數(shù)返回一個負(fù)值;
// ②字符串1等于字符串2,strcmp函數(shù)返回零;
// ③字符串1大于字符串2,strcmp函數(shù)返回一個正值;
// 字符中的大小是如何比較的呢?來看一個例子
// 實(shí)際上,字符串的比較是比較字符串中各對字符的ASCII碼
// 首先比較兩個串的第一個字符,若不相等,則停止比較并得出大于或小于的結(jié)果;如果相等就接著比較第二個字符然后第三個字符等等
// 如果兩上字符串前面的字符一直相等,像"disk"和"disks"那樣,前四個字符都一樣,然后比較第五個字符
// 前一個字符串"disk"只剩下結(jié)束符'0',后一個字符串"disks"剩下's','0'的ASCII碼小于's'的ASCII碼,所以得出了結(jié)果
// 因此無論兩個字符串是什么樣,strcmp函數(shù)最多比較到其中一個字符串遇到結(jié)束符'0'為止,就能得出結(jié)果
// 注意:字符串是數(shù)組類型而非簡單類型,不能用關(guān)系運(yùn)算進(jìn)行大小比較
// if("ABC"> "DEF") /錯誤的字符串比較/
// if(strcmp("ABC", "DEF") /正確的字符串比較/
// 原型:extern int strcmp(const char s1, const char s2)
// 用法:#include
// 功能:比較字符串s1和s2
// 相關(guān)函數(shù):wcscmp
// 一般形式:strcmp(字符串1,字符串2)
// 說明:
// 當(dāng)s1 // 當(dāng)s1=s2時,返回值=0 // 當(dāng)s1>s2時,返回值>0 // 即:兩個字符串自左向右逐個字符相比(按ASCII值大小相比較),直到出現(xiàn)不同的字符或遇'0'為止 // 如:"A"<"B""a"> "A""computer"> "compare" // 特別注意:strcmp(const char s1, const char s2)這里面只能比較字符串,不能比較數(shù)字等其他形式的參數(shù) // C語言是一門面向過程的計算機(jī)編程語言,與C++、Java等面向?qū)ο缶幊陶Z言有所不同 // C語言的設(shè)計目標(biāo)是提供一種能以簡易的方式編譯、處理低級存儲器、僅產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語言 // C語言一般只比匯編語言代碼生成的目標(biāo)程序效率低10%至20% // C語言可以編寫系統(tǒng)軟件 // 當(dāng)前階段,在編程領(lǐng)域中,C語言的運(yùn)用非常之多,它兼顧了高級語言和匯編語言的優(yōu)點(diǎn),相較于其它編程語言具有較大優(yōu)勢 // 計算機(jī)系統(tǒng)設(shè)計以及應(yīng)用程序編寫是C語言應(yīng)用的兩大領(lǐng)域 // C語言的普適較強(qiáng),在許多計算機(jī)操作系統(tǒng)中都能夠得到適用,且效率顯著 // C語言中strcmp的用法 // 在C語言中,strcmp函數(shù)是用于比較兩個字符串的函數(shù) // 它位于庫中 // 該函數(shù)主要用于比較兩個字符串是否相同,或者確定一個字符串是否大于或小于另一個字符串 // 以下是關(guān)于strcmp函數(shù)的函數(shù)原型和在C語言中的用法 } ```