* 间接访问,单目运算符
指针变量 = 右值;,对指针解引用操作
指针加3操作,实际上是把指针的地址 + 3乘以指针类型长度,例如 float 类型加3 ,地址加 3 * 4 = 12 个字节
只有指向同一个数组元素的不同指针地址才能相减
指向数组最后一个元素的指针 ++ 是合法的,但是不能对 ++ 后的指针进行间接访问操作
对指向同一数组的两个指针进行 <,>,<=,>=操作是合法的但不知道会有什么样的结果,对他们进行 相等、不相等操作是完全可以的。
传值调用、传址调用
NUL字节是字符串的终止符,NUL = '/0'字节比不属于字符串
strlen(); //返回字符串的长度
/*
char *strcpy(); //拷贝第二个参数字符串到第一个参数字符串
char *strcat(); //将第二个参数字符串插入到第一个字符串后面
返回一个指向目标字符数组的指针 */
strncmp();比较两个字符串的长短,s1小于s2返回小于0的值,s1大于s2返回大于0的值,相等返回0
char *strchar(); //查找第二个参数字符在第一个参数字符串中首次出现的位置并返回位置
char *strrchar(); //查找第二个参数字符在第一个参数字符串中最后出现的位置并返回
char *strpbrk(char *const *str, char const *group); //返回一个str中第一个匹配group中任何一个字符的位置
char *strstr(); //查找第二个参数字符串在第一个参数字符串中首次出现的位置并返回
size_t strspn(); //详见此目录下专门txt文件
char *str = "hello world!"; // 字符串常量不能修改
char str[] = "hello world!"; //储存字符串的数组可以修改里面的内容
while(*str++); //当遇到字符串str结尾 ‘/0’时跳出,因为‘/0’等于零
int tolower(int ch); // 返回其参数的对应大写形式
int toupper(int ch); // 返回其参数的对应小写形式
结构声明的几种方式:
struct
{
int a;
char b;
char c;
}tag;
struct tag
{
int a;
char b;
char c;
};
typedef struct
{
int a;
char b;
char c;
}tag;







