我如何從argv[0]
讀取?我正在使用NetBeans。每次,我都必須輸入stdin。當我使用argv
時,程序會在沒有我輸入的情況下執行。閱讀來自argv [0]
這裏是我的代碼:
int main(int argc,char *argv[])
{
char *text;
int textLen,repNum;
text = stream2string(stdin,&textLen);
//....text = argv[0] doesnt work :(
UPDATE:
當我編譯和運行,我必須鍵入的示例串!字符串總是相同的:ABAABAABBBA
。所以我會採用第一個參數而不是stdin。但argv[1]
也不起作用。
這裏的stream2string()
:
char *stream2string (FILE *fptr, int *n)
{
static char *s;
*n = 0;
ALLOC(s,char,2);
s[*n] = getc(fptr);
while(s[*n]!=EOF && s[*n]!='\0' && s[*n]!='\n') {
REALLOC(s,char,++*n+2);
s[*n] = getc(fptr);
}
s[*n] = '\0';
return(s);
} /* stream2string() */
我認爲設置textLen
也很重要。
目前尚不清楚你的問題是什麼或者你正在努力完成什麼,你能否用一個完整的示例程序來闡明這個問題? – 2009-08-03 16:40:17
當你有一個論點時,argc的價值是什麼? argv [0]應該包含可執行文件的名稱;你的第一個論據應該是在argv [1]中。 – Zed 2009-08-03 16:41:42