【发布时间】:2016-08-11 20:55:54
【问题描述】:
我试图在 Ubuntu 下运行这段代码,但是当我运行下面的代码时:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <signal.h>
int main(int argc , char agrv[3]){
int pid ,sig;
sig = atoi( argv[1]);
pid = atoi( argv[2]);
kill(pid,sig);
return(0);
}
上面写着
ex02.c:10:13: error: ‘argv’ undeclared (first use in this function)
sig = atoi( argv[1]);
【问题讨论】:
-
正确的声明是
int main (int argc, char *argv[])argv不是char数组,而是char指针数组。 -
脚本?乌本托??真的???
-
此外,
argv和agrv是不同的名称 - 你都使用过。 -
我对@LPs的评论:仔细看看
argv的参数声明。计算机是不宽容的。不要使用草率的语法。并正确格式化和缩进你的代码。 -
语义很重要——你不是在运行上面的代码,而是在编译它。