C语言
-
指向指针的指针、
-
char* a[] = { (char*)"这",(char*)"是",(char*)"子",(char*)"符",(char*)"串",(char*)"指",(char*)"针",(char*)"数" ,(char*)"组" }; /*因为编译器vs版本原因、 添加了使用转换、2017以下版本无需强制转换*/ int b = sizeof(a); int c = b / sizeof(a[0]); int e; char* f = (char*)"zhei";//把字符串的首地址赋给指针、f=a[1] for ( e = 0; e < c; e++) { printf("a[%d]=%s\n", e, a[e]); } printf("______________\n"); char* q; q = a[0]; a[0] = a[1]; a[1] = q; for (e = 0; e < c; e++) { printf("a[%d]=%s\n", e, a[e]); } printf("______________\n"); char** x;//定义一个指向指针的指针、 x = &a[0]; printf("x=%s\n", *x); printf("______________\n");
int abc = 5;
int* abcd = &abc;
int** abcde = &abcd;
printf("abc=%d\n", abc);
printf("abc=%d\n", *abcd);
printf("abc=%d\n", **abcde); -
-
-
指针数组做main函数形参、
-
指针数组可以做main函数的形参、
-
int main( int a,//整型 char *b[] )//指针数组、指针数组做函数形参、a[0]默认保存当前可执行文件的完整路径文件名、
-
传递字符串到main函数中、
- 属性
- 配置属性、
- 调试
- 命令参数、
- 输入需要传递的字符串、且只能是字符串、使用空格 分隔、
- 命令参数、
- 调试
- 配置属性、
- 属性
-
-
指针数组中每一个元素都是指针变量、都可以指向一个整型普通变量、
-
{ char* a[] = { (char*)"这",(char*)"是",(char*)"子",(char*)"符",(char*)"串",(char*)"指",(char*)"针",(char*)"数" ,(char*)"组" }; /*因为编译器vs版本原因、 添加了使用转换2017以下版本无需强制转换*/ int b = sizeof(a); int c = b / sizeof(a[0]); int e; char* f = (char*)"zhei";//把字符串的首地址赋给指针、f=a[1] for ( e = 0; e < c; e++) { printf("a[%d]=%s\n", e, a[e]); } printf("______________\n"); char* q; q = a[0]; a[0] = a[1]; a[1] = q; for (e = 0; e < c; e++) { printf("a[%d]=%s\n", e, a[e]); } printf("______________\n"); }
-
-
数组指针指向一维数组的指针变量、一个、
-
C语言所有定义放在最前头、C++则是随时定义随时用、
-
指针++或者 – – 增加或减少的是地址而非内容、
-
指针变量的赋值、不能直接赋值数字(0除外、0代表空值)、只能将已经分配的地址赋给指针变量、
-
指针变量可以是空值、空值相当于0、或者NULL、
-
void指针、万能型、可以指向任意数据类型、
-
int a= 3; int *b = &a; float c = 1.2; float *d = c; void *e = NULL; e = b; e = d;
-