int *p[4]
一般简单程序的main函数是不写参数的,但是实际上很多时候,main函数可以有参数。 格式如下:
int main (int argc,char *argv[])
argc 和 argv 就是main 函数的参数。
argc是指参数个数;argv是指参数向量,它是一个*char 指针数组,数组中的每一个元素(其值为指针/地址)指向命令行中的一个字符串的首字符。
程序是由main函数开始执行的,显然传给main函数的实参只能由操作系统来完成。这是怎么回事呢?
以我们常见的DOS等系统的操作命令状态下,在命令行中包含了给main函数传的参数,其一般格式为:
命令 参数1 参数2
file1 china beijing
其中file是一个命令,命令名是可执行文件名,假设是file1.exe 这个文件里由main函数
china beijing 就是要传给可执行文件main函数的参数。
结果是:
argc = 3;
argv[0] = "file1"
argv[1] = "china"
argv[1] = "beijing"
int main (void)
{
int i=10;
int * p = &i;
int ** q = &p;
int *** r = &q;
/*
r里面只能存放 int ** 类型的变量的地址
要用r表示 i ,已知*r表示q,则用r 表示i 需要写成 ***r
*/
}
void f(int ** q)
{
// *q 就是g函数里的p
**q = 100;
// **q 就是 i
}
void g()
{
int i=10;
int *p=&i;
f(&p);
printf("%d\n",i);
}
int main(void)
{
g();
return 0 ;
}
//输出100
本文章使用limfx的vsocde插件快速发布