指针与main函数
一、函数指针
int (*add)(int, int); // 函数指针变量
typedef int (*add)(int, int); // 函数指针类型
二、typedef 的用法
内建类型的重命名:(与宏定义看着有相似之处,但是本质上是有差异的)
typedef long long lint; // 给long long 取别名为 lint
typedef char * pchar;
结构体类型的重命名:
typedef struct __node {
int x, y;
} Node, * PNode;
函数指针命名:(提升变量为类型)
typedef int (*func)(int);
三、main 函数参数
int main();
// argc 表示从外部传进来的参数个数, argv[] 存储的是命令行参数, (* 相当于[])
int main(int argc, char *argv[]);
// env 的本质依然是一个二维数组,相当于一个env数组,每一格存储的是char *,env 为环境变量信息
int main(int argc, char *argv[], char **env);
main 函数中最后的 return 0 是返回给了操作系统,表示成功结束了一个进程。