我目前正試圖讓我的程序按我想要的方式工作。我目前正處於可以從命令行(無限量)打開任何文本文件並顯示它們的位置。我想對此進行擴展,讓用戶輸入格式化顯示文本的短語。我以前發佈過類似的問題,我已經得到了一些很好的答案,但我不能使用getopt()。除此之外,還有什麼可以掃描命令行中的「-w」和數字,所以「-w5」和沒有數字的「-s」。這是我希望能夠檢測到的唯一兩件事。我不介意是否有聲明,我希望在我的朋友中使用最短的程序,但在這一點上,我只想完成它。有任何想法嗎?多個if語句是我朋友的想法,我個人認爲這是不需要的,但如果這就是我必須做的......如果任何人有任何想法,這將是非常有用的。我只想讓我的程序從命令行檢測這兩個字符。我對C相當陌生(我只做了幾個程序),但是我很早就學會了,我嘗試過使用Google,並嘗試使用它,但對C來說是新手,試圖找到我需要的東西所有其他的文字和行話都很困難。如何從命令行掃描短語?
任何東西都會有用,謝謝。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
int l = 1;
while(l != argc)
{
FILE *fp;
fp = fopen(argv[l], "rb");
l++;
if (fp != NULL)
{
int i = 1;
do
{
i = fgetc(fp);
printf("%c",i);
printf(" ");
}
while(i!=-1);
fclose(fp);
}
else
{
printf("Error.\n");
}
}
}
void scanningForWS(int argc, char **argv)
{
}
爲什麼你不使用'getopt的()'? – duskwuff
因爲他在Windows上?用戶ID不同,但討論的選項與[我是否正確理解'getopt()']相同?](http://stackoverflow.com/questions/13767888/am-i-understanding-getopt-correctly )。 –
做一個Google(或您選擇的其他搜索引擎)搜索'getopt source at&t public domain'。你會發現一個版本的getopt()的源代碼,該版本在1985年被AT&T放置在公共領域。你需要將它轉換爲標準C(它不使用原型),否則,你應該很好走。 –