指针
1
char a[] = "wertyyui";//把常量区的内容复制到栈区,可以修改
//不能直接操作常量区里面的内容
//a[2] = 'x';
printf("%p\n" , a);
char *p = "wertyui";//直接指向常量区
printf("%p\n" , p);
2
结构体访问成员变量
p->name
p.name
3
typedef struct person
{
//当结构体内为数组时,存储内容从常量区拷贝到栈区,内容可以修改
//当是*name时,指向常量区,不可以修改 //char *name;
char name[30];
int age;
} Person;
4(不能忘写+j)
//学生姓名排序
void sortByName(Student *p , int count)
{
for (int i = 0; i < count - 1; i++) {
for (int j = 0; j < count - 1 - i; j++) {
if (strcmp((p + j)->name , (p + j + 1)->name) > 0) {
Student temp = *(p + j);
*(p + j) = *(p + j + 1);
*(p + j + 1) = temp;//结构体可以赋值操作
}
}
}
}