返回:贺老师课程教学链接
【项目1-用命令行运行程序】
下面的程序,用于复制命令行中给出的文件。请利用命令行的方式运行程序。
#include<stdio.h> #include<string.h> int main(int argc,char *argv[]) { FILE *p1,*p2; int c; p1=fopen(argv[1], "r"); p2=fopen(argv[2], "w"); while((c=fgetc(p1))!=EOF) fputc(c,p2); fclose(p1); fclose(p2); printf("复制完毕!敲任一键退出...\n"); getchar(); //这一句在命令行下运行时很关键,可以在程序结束前停下来(等待输入) return 0; }
[参考方法]
提示步骤(视频中有演示):
(1)在CodeBlocks中完成程序的编译,到项目所在的文件夹中,找到编译好的.exe文件
(2)打开DOS窗口(有困难找百度),如下图所示:
命令行的提示符显示当前用户的工作目录。
(3)将当前目录设置为.exe所在的目录
常用的命令:
盘符后加冒号:代表将当前盘设置为指定的盘;
cd 路径(路径由文件夹名用/隔开)
例如,下图的命令组合,将当前盘设置为D盘,然后设置当前目录为cb\test\bin\debug,该目录就是编译好的test.exe所在的目录
(4)运行命令
这个程序要实现两个文件的相互复制,我们需要提前做一个基础性工作:在该文件夹中建一个文件。最简单的,你可以建一个文本文件a.txt,里面随便输入些你喜欢的字句。
然后在命令行提示符下输入带参数的命令。在我给出的示例中,项目名是test,所以创建了test.exe,所以命令名是test。加上参数后运行程序,输入的命令为:test a.txt b.txt,下面是运行程序的窗口
(5)现在可以查看复制出来的文件了。
补充:是否可以在集成环境下,调试要求命令行中带参数的程序?可以,在各个IDE中都可以进行设置(具体操作略有不同)。以CodeBlocks为例,菜单Project-->set programs' arguments...在出现的下面对话框的programs arguments部分,写上你需要的参数。参数有多个,请用空格隔开,如图:
时间: 2024-09-30 06:17:05