
C/C++
文章平均质量分 81
ywb201314
兵法有言,知己知彼,百战不殆
展开
-
详解main函数参数argc、argv及如何传参
到这里先知道 main 函数参数的形式即可,它第一个参数为 int 类型的变量,第二个参数是一个char* 类型的指针数组,关于char* argv[ ] 和 (char*)argv[] 的区别在下面文章中有详细讲解。(1)argc 代表命令行参数的个数,是一个整数值,虽然它也是一个参数,但不用去单独输入,在 给 argv[ ]传参后,系统会根据空格自动记录共有多少参数,并赋值给 argc。(3)argv是一个指向字符串数组的指针,每个元素都是一个指向传递给程序的参数的指针。转载 2024-05-10 13:44:59 · 149 阅读 · 0 评论 -
关于int *p[n]和int (*p)[n]的超详细讲解
在编程中,会遇到这样的情况:int *p[n];int (*p)[n];还有一种情况是声明函数:int *p();int (*p)();这些分别表示什么意思呢?表面上看这些问题,好像是指针,但是,如何来正确判断这几个定义,需要我们首先有运算符优先级的概念。在c语言中,[]和()的优先级比星号(星号的名字叫做“指针运算符”)要高,所以,在这几个声明中,先看[]转载 2016-07-29 10:21:43 · 14550 阅读 · 2 评论 -
int **p如何使用?
对于int **p来说,p所指的对象是指针,那么++p就是让p的值增一个指针的大小,虽然指针所指对像可大可小,但是指针自己的大小却是一定的,目前的系统上一般是4字节(或8字节)。也就是说,对char *p和long *q来说,p和q本身占内存容量是一样大的(虽然char和long占内存不一样大)。一个典型的错例:int a[2][3];int **p = a;//错误这转载 2016-07-29 10:35:30 · 2168 阅读 · 0 评论