一道linux的c语言程序题

编写程序p2,当执行命令“p2file1file2”,实现复制文件file1成file2... 编写程序p2,当执行命令“p2 file1 file2”,实现复制文件 file1成file2 展开
 我来答
test_pop
2013-07-08 · TA获得超过376个赞
知道小有建树答主
回答量:332
采纳率:100%
帮助的人:241万
展开全部
#include <stdio.h>
#include <stdlib.h>

int main()
{
system("cp ./file1 ./file2");
return 0;
}

最简单的方法!!!!!!
追问
file1和file2是作为参数的,这么写只能让file1换成file2,太狭隘了
追答
你的意思是file1name和file2name是变量字符串?
#include
#include
#include

int main(int argc, char **argv)
{
char cmd[50] = {0};
char file1[20] = {0};
char file2[20] = {0};
if(argc >= 3)
{
strcpy(file1, argv[1]);
sprintf(cmd, "touch %s", file1);
system(cmd); //touch file1
strcpy(file2, argv[2]);
memset(cmd, '\0', sizeof(cmd));
sprintf(cmd, "cp %s %s", file1, file2);
system(cmd); //cp
}
return 0;
}
凤溥心0I0e4d
2013-07-08
知道答主
回答量:21
采纳率:0%
帮助的人:11.2万
展开全部
#include <stdio.h>
#include <stdlib.h>

int main(int argc, const char* argv[])
{
if(argc != 3)
{
printf("usage:%s file1 file2\n", argv[0]);

return 0;

}
char cmdbuf[1024] = {0};
strcpy(cmdbuf, "cp");
strcat(cmdbuf, " ");
strcat(cmdbuf, argv[1]);
strcat(cmdbuf, " ");
strcat(cmdbuf, argv[2]);
system(cmdbuf);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
金鳞火凤
2013-07-08
知道答主
回答量:8
采纳率:0%
帮助的人:1.2万
展开全部
#include <stdio.h>
int main (int argc, char* argv[])
{
if ( argc != 3 )
{
printf ("Wrong arguments.\nUsage: argv[0] srcfile desfile\n");
return 1;
}
system ("cp argv[1] argv[2]");
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
王恣意
2013-07-08 · TA获得超过298个赞
知道答主
回答量:186
采纳率:0%
帮助的人:94.1万
展开全部
你自己好好看两眼 文件io ,这都不会咋上班呀~
追问
汗,我今年大二,操作系统实训而已,以前从来没用过
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ccc21999149
2013-07-08 · TA获得超过169个赞
知道答主
回答量:79
采纳率:50%
帮助的人:27.7万
展开全部
同学,你二工大的吧。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式