language5

指针

指针的大小是相同的,因为指针是用来地址的,指针需要多大空间,取决于地址的存储需要多大空间

32位-32bite-4byte 指针大小在32位平台是4字节大小

64位-64bite-8byte 指针大小在64位平台是8字节大小

内存

为了有效使用内存,就把内存划分成一个个小的内存单元,每个内存单元大小一个字节,为了有效访问,给每个单元编号,称为内存单元的地址

结构体

使C语言有能力描述复杂类型

如描述物品,包含“名称+大小+颜色”这几项信息,就要用结构体

工程

指针

%p专门用来打印地址

pa用来存放地址,叫指针变量

*说明pa是指针变量

int说明pa的执行对象是int型

如果是char型就如下

char ch='w';

char*pc=&ch;

#include<stdio.h>
int main()
{
    int a=10;
    printf("%p\n",&a);
    int*pa=&a;
    return 0;
}

*pa=20;为解引用操作,*pa就是通过pa里地址找到a

#include<stdio.h>
int main()
{
    int a=10;  
    int*pa=&a;
    *pa=20;
    printf("%p\n",&a);
    return 0;
}

结构体

.为结构成员访问操作符

->(是箭头)操作符

%lf为打印双精度浮点数

#include<stdio.h>
struct Stu
{
    char name[20];
    int age;
    double score;
};
struct Book
{
    char name[20];
    float price;
    char id[15];
};
int main()
{
    struct Stu s={"John",18,39.9};//结构体的创建和初始化
    printf("%s %d %lf\n",s.name,s.age,s.score);//结构体变量.成员变量
    struct Stu * ps=&s;
    printf("2:%s %d %lf\n",(*ps).name,(*ps).age,(*ps).score);
    printf("3:%s %d %lf\n",ps->name,ps->age,ps->score);//结构体指针->变量名
    return 0;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值