指针与字符串

 
1. int a[] = {5, 15, 34, 54, 14, 2, 52, 72};
2. int *p = &a[5];
p[-2]为54;
数组a储存连续,a[0]地址低;
 
int* p,q;
p为int型指针,q为int型数据类型,没有int*型;
 
指向数组的指针,用指针名称和数组名称可以通用;
 
char既为整数也为字符;
 
scanf("%d %c",a,b);
scanf("%d%c",a,b);
scanf有空格,则输入第一个字面量后输入空格知道第二个;
没有空格则第二个输入为空格;
 
逃逸字符/转义字符
 
char word[]={'H','e','l','l','o','!'};//字符数组
char word[]={'H','e','l','l','o','!','\0'};//字符串,同时也是字符数组,以\0,0结尾都可
字符串长度不包含结尾的0,\0
 
定义字符串变量
char *str="Hello";//名称为str的指针指向此字符串,地址很小,只读,作为指针
char word[]="Hello";//最为数组,地址很大,本地变量,可修改
char line[10]="Hello";
数组作为本地变量空间自动被回收
指针:字符串不知道在哪,处理参数、动态分配空间
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
posted @ 2020-08-14 18:37  sueg-lee  阅读(72)  评论(0)    收藏  举报