C语言学习之路—— 指针修饰符

本文探讨了C语言中的指针修饰符,包括const和volatile的作用。const修饰指针时,使得指针只能读取所指内容,而不能修改。volatile则常用于修饰易变的硬件资源,防止编译器优化。通过示例代码,分析了指针修饰符可能导致的Segmentation fault错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本次学习的是C语言中的指针修饰符。

在通常定义的指针中,指针是一个变量,比如 char *p;指针的修饰符存在以下几种 const、voliatile、typedef。

const介绍

在修饰的对象中存在着多种组合,如下所示:
char p;//这里的char 来修饰指针。
方式1:首先看到
p是用char修饰,其中*p是可以用来指向不同的内存空间的,但是加上const进行修饰后,指针只能读取所指的内容。指向的地址可以变,内容不能变。

const char *p;//通常选用此种方式
char const *p;

例如:

"Hell0 World"//常量字符串的指针

方式2:
硬件资源的定义,指针不能变,指向的内容可变。

char * const p;//通常选用此种方式。
char *p const;

方式3:内容和地址都不能变。通常用在于ROM空间。

const char *const p;

为了进一步了解写了如下code:

#include <stdio.h>
int m
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

义薄云天us

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值