LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 645|回复: 2

一个程序帮改一下好吗?

[复制链接]
发表于 2005-10-21 00:11:42 | 显示全部楼层 |阅读模式
#include <sys/types.h>
#include <unistd.d>
#include <sys/wait.h>
static void function1(char *);
static void function2(char *);
int main(int argc,char *argv[])
{
if(argc==1)
function1(argv[0]);
else
function2(argv[1]);
exit(0);
}
static void function1(char *cmd)
{
if(start==cmd)
{
while(stop!=cmd)
{
sleep(10);
printf("it sleeping\n");
}
exit(0);
}
else
printf("the wrong putin\n");
exit(0);
}
static void function2(char *cmd)
{
pid_t pid;
int i;
for(i=0;i<cmd;i--);
{
if((pid=fork())<0)
err_sys("fork error");
else if(pid==0){
printf("this is the fork %d\n",cmd);
}
else
sleep(3);
exit(0);
}


要实现输入TEST.OUT START 序执行长时间的sleep;运行program stop,则程序停止运行;
运行program start n,则启动n个程序在后台驻留内存运行,再加上一个主控进程,则应当是有n+1个进程在后台运行。其中主控进程是其他工作进程的父进程。
发表于 2005-10-21 11:40:35 | 显示全部楼层
start==cmd是什么东西?字符串是这样比较的吗?
i<cmd?cmd是指针也!
总之问题多多
回复 支持 反对

使用道具 举报

发表于 2005-10-21 12:32:37 | 显示全部楼层
而且TEST.OUT START的时候argc=2
argv[0]="TEST.OUT"
argv[1]="START"
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表