指针
int main()
{
int a = 3;//申请了4个字节的空间
int* p = &a;//存放地址的变量是指针变量,它的类型是int*
*p = 20;//*-解引用操作符,通过*p找到a,相当于a=20
printf("%d\n", a);//20
printf("%d\n", sizeof(p));
//指针变量在32位平台上占4个字节,64位平台占8个字节,这里要跟普通变量区分开
return 0;
}
数据类型
用指针打印数据类型中的东西
修改数据类型中的内容
//用结构体-描述复杂对象-我们自己创造的一种类型
//创建一个结构体类型
#include<stdio.h>
#include<string.h>
struct book
{
char name[20];//小王子
short price;//55
}
int main()
{
struct book b1 = { "小王子",55 };//利用结构体类型创建一个该类型的结构体变量
struct book* pb = &b1;//指针变量
printf("书名:%s\n", b1.name);
printf("书名:%s\n", (*pb).name);//用指针
printf("书名:%s\n", pb->name);//指针的另一种写法
printf("价格:%dyuan\n", b1.price);
printf("价格:%dyuan\n",(*pb).price);
b1.price = 15;//price是变量,可直接改
printf("修改后价格:%dyuan\n", b1.price);//单位加在%d后面
strcpy(b1.name, "C++");
//书名是数组名,要用strcpy-string copy-字符串拷贝-库函数-string.h
printf("修改后书名:%s\n", b1.name);
return 0;
}