C语言 碎片

文章详细解释了C语言中`const`关键字用于指针时的含义,以及`typedef`如何定义新的数据类型,如在XV6kernel/types.h中的例子所示。`typedef`被用来创建像`uint`、`Processtree`这样的自定义类型。此外,文章还讨论了在打印指针地址时使用`%p`格式化符的重要性,并提及了不同编译器环境下指针变量的字节数。
摘要由CSDN通过智能技术生成

const 与指针 :值不变还是指针不变?

typedef ——定义类型!!!

详例:

http://c.biancheng.net/view/298.html

eg: XV6 kernel/types.h 中:

typedef unsigned int   uint;
typedef unsigned short ushort;
typedef unsigned char  uchar;

typedef unsigned char uint8;
typedef unsigned short uint16;
typedef unsigned int  uint32;
typedef unsigned long uint64;

typedef uint64 pde_t;

既定义了struct,以定义了新类型Processtree

typedef struct processtree{
    pid_t pid;
    char name[40];
    struct childprocesses *children;
}Processtree;

打印地址(指针地址)时,最好用%p

%p是打印地址(指针地址)的,是十六进制的形式,但是会全部打完,即有多少位打印多少位。
32位编译器的指针变量为4个字节(32位),64位编译器的指针变量为8个字节(64位)。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值