这是我第一次使用 C 语言编程,我一直在尝试创建查询接口(interface)。
我的意思是说我有一些数据并且我有一个函数 CreateGraph()。
我希望 CreateGraph 能够接受这些查询
CreateGraph <标题> <条形图> <开始日期/时间> <结束日期/时间>
用户在运行时在控制台上输入这些查询。 示例:CreateGraph MyGraph 7 蓝色 10 将生成一个蓝色图表,其中包含 7 个大小为 10 的条形,标题为 myGraph。
对于如何实现这一点非常困惑。谢谢。 (这是基于我试图完成的任务,但我只想要总体思路)
最佳答案
听起来您想要做的是使用命令行参数作为程序执行的标志。在 C 中,您不会专门从命令行调用该函数,因为没有办法这样做(至少据我所知)。但是,您要做的是使用 argc 和 argv。
当用 C 语言编写 main 函数时,您通常会直接编写
int main (){
//code
}
但这并不是唯一的方法。也可以这样写
int main (int argc, char *argv[]){
//code
}
这些 argc 和 argv 是保存命令行中提供给程序的数据的变量。基本的运行看起来就像
>./a.out
在这种情况下,“./a.out”实际上是一个命令行参数,启动程序运行。所以如果你输入
>./a.out MyGraph 7 blue 10
argc 是一个值为 5 的 int
,argv 是一个包含行中每个字符串的数组,以空格分隔
["./a.out","MyGraph", "7", "blue", "10"]
然后可以像 C 中的任何其他 char* 数组一样访问它们。
话虽这么说,您问题中的情况更适合从文件中读取输入,或者在运行时使用 scanf 从用户那里读取输入。
编辑:现在我重读了你的问题,scanf 似乎是一个更好的选择。在 C 语言中,要在程序执行期间获取用户输入,可以使用函数 scanf
。我建议在谷歌上搜索如何在 C 中获取用户输入,因为它比我想在这个答案中写的更复杂。 AFAIK,“查询接口(interface)”不是 C 中的东西
关于用 C 创建查询接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33227648/