【发布时间】:2012-11-25 20:40:31
【问题描述】:
我想知道如何通过命令行获取其他输入?我想寻找“-w”和一个数字,所以它看起来像“-w60”和“-s”。这个输入是通过命令行给出的,所以它看起来像这样:
c:\Users\Username\Desktop> wrapfile.exe -w5 -s test.txt
输出应如下所示:
你好 , 这 是一个 测试
-w5 和 -s 的意思是:
-w5 = 宽度(一次只能显示5个字符)
-s = 间距(包括间距,因此尽可能多地容纳整个单词)
我想创建一个扫描这两个字符的函数,如果有人知道如何格式化输出以便它完成它需要做的事情,那也会很有帮助。
我只是有点困惑,我已经在这个程序上工作了一段时间,我只是想了解如何正确扫描和使用这些东西。
这是我当前的代码,它从命令行接收无限数量的文本文件:
#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)
{
}
*/
【问题讨论】:
-
呃!请不要使用小写 L 作为标识符,谢谢。
-
大声笑,我会记住这一点 :) 如果您选择复制并粘贴代码,如果您显示答案,请告诉我您已更改它:D
-
是的,我想改进这个想法。我意识到你需要传递一个变量来定义你想要的宽度。
-
@pmg,为什么呢? (请阅读以下文档中的“变量名称”部分:doc.cat-v.org/bell_labs/pikestyle)
标签: c testing input cmd output