如果第一個參數==「 - 」的第一個字符則輸入if語句。我得到的錯誤是「傳遞'strcmp'的參數1使得整型指針沒有投射」我也嘗試過使用fgetc,寫得有點不同,但仍然得到這個錯誤。如果我投了它,我會得到一個核心轉儲。 如果參數包含一個破折號它之後將相同的參數內的數字,所以我不能只是看的argv [1]爲單個字符,如果我能的條件將是簡單的:if (strcmp(argv[1], "-")==0)
C-檢查第一個命令行參數中的第一個字符是否包含特定的字符
功能
int main (int argc, const char *argv[]){
const char *test = argv[1];
if (strcmp(test[0],"-")==0)
{
printf("saw there was a dash");
}
return 0;}
謝謝您的幫助
如果您使用的是* nix(包括Linux和Mac OS X)系統,那麼您最好使用['getopt(3)'](http://www.gnu.org/software/libc/manual /html_node/Example-of-Getopt.html#Example-of-Getopt) – nodakai