深入浅析C语言中常量指针与指针常量的区别

更新:11-14 名人轶事 我要投稿 纠错 投诉

大家好,如果您还对深入浅析C语言中常量指针与指针常量的区别不太了解,没有关系,今天就由本站为大家分享深入浅析C语言中常量指针与指针常量的区别的知识,包括的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

const 之后: NSSting * const p=@"aa";第——章——const p 等于@"aa" 的空格。 ——const修改的指针空间是常量,不能修改,而@"aa"空间可以修改

本文主要介绍C语言中常量指针和指针常量的区别。有需要的朋友可以参考一下。

常量指针(const在*之前,修饰指针指向的是常量且不能修改的空间,指针可以修改):指指向常量的指针。顾名思义,指针指向常量,即它不能指向变量,它指向常量。内容不能改变,它指向的内容也不能通过指针修改,但指针本身不是常量,可以改变它本身的值指向另一个常量。

指针常量(*后const,修饰指针为常量指针,指针不可修改,指向空间的指针可修改):指指针本身是常量。它指向的地址不能改变,但可以通过指针改变地址中的内容。它指向的地址将一直保留到其生命周期结束。需要注意的一点是,指针常量在定义时必须赋初值。

注:也有人反过来想这两个名字的定义和含义:《指针常量:顾名思义,它的中心词是“常量”。这是重点,指针是修饰。所以这里的指针仍然是一个变量,它的内容存储的是一个常量的地址。 常量指针:关键字是一个指针,不能改变,因为指针总是指向地址,所以意味着它指向的地址不能改变。 ”。但我个人认为后者不合理,所以我采用前者。

2、使用方法:

使用时写法的区别:常量指针:const before * 指针常量:const after *。

当然,我们也可以定义常量指针常量,那么我们需要添加两个const,一个在另一个之前!以上仅给出了两者在定义上的本质区别。具体用法有很多变化,但还是一样的。我们可以根据其原理来分析各种复杂用法的本质。

3. 使用示例

3.1 常量指针的使用:

如intb、c;

int 常量*a;

a=b;

a=c;

一切都OK,但是它指向的内存无法修改。例如:*a=20;这是违法的!错误!

3.2 指针常量的使用

比如英塔;

内部测试;

int * const p=a;

表示p是一个常量指针,指向变量a的内存。指针常量不能再使用p指向其他变量,如p=aTest;错误!可以修改指向内存的值,如:*p=20;当声明一个指针常量时,你必须像我一样分配一个初始值。

指针常量也不能释放,使用p指向NULL,即

p=空;

编译时会出现错误

/opt/test/test.c:649:error: 只读变量`p"的赋值

还有记住它们不同形式的技巧!查看const 关键字。其后的内容无法修改。例如,int* const a=b;如果后面跟a,则表示a不能修改!

intconst * a=b;后面跟*a表示*a不能修改!

在很多书籍或MSDN中,constint a=5;整数b=6;常量int *p=b;经常被使用。

其实constint*和intconst*是一样的,即常量指针,即它指向的数据(本例为int)是一个常量,它本身的数据类型是constint*

还有constint *p=b;尽管b 不是常数,但这是可能的。但const a=6; int *p=a;会报错,因为它消除了a 的const 属性

4.使用技巧

使用指针常量可以提高代码的可靠性和执行效率。

比如英塔;

int * const p=a;

用户评论

?娘子汉

想深入了解C语言里的指针运作机制?这个标题很有吸引力!

    有8位网友表示赞同!

景忧丶枫涩帘淞幕雨

常量指针和指针常量,这两个概念听起来有点绕脑,希望能好好解释一下。

    有11位网友表示赞同!

水波映月

最近在学习指针,感觉还是挺难的,这篇文章正好可以帮助我理解!

    有13位网友表示赞同!

琴断朱弦

C语言程序员必备知识啊!这种基础概念 mastered 应该能写出更多简洁高效的代码。

    有13位网友表示赞同!

久爱不厌

我一直没搞懂常量指针和指针常量的区别,看了这个标题感觉有救了。

    有19位网友表示赞同!

青山暮雪

浅析就能看明白? 期待文章解释清晰易懂!

    有9位网友表示赞同!

瑾澜

学习C语言的过程中遇到过这两个概念,现在回头再看看感觉更有意思了!

    有11位网友表示赞同!

冷嘲热讽i

做程序员的要经常接触指针操作,这篇文章肯定很有用。

    有11位网友表示赞同!

娇眉恨

希望能够详细解释常量指针和指针常量的用法场景!

    有16位网友表示赞同!

陌上蔷薇

C语言基础知识很重要,这篇文章可以帮助我加深理解。

    有7位网友表示赞同!

麝香味

学习编程的过程中遇到很多语法难题,这篇文章也许能给我一些启发!

    有7位网友表示赞同!

别悲哀

期待一篇有深度、易懂的文章,帮我彻底解决常量指针和指针常量的困惑!

    有14位网友表示赞同!

滴在键盘上的泪

这个标题很有吸引力,希望文章内容也能让我满意!

    有7位网友表示赞同!

你tm的滚

指针的概念确实需要多加练习才能熟练掌握,这篇文章是个不错的学习资源。

    有16位网友表示赞同!

为爱放弃

看了标题就感觉这篇博文很专业,值得我花时间认真阅读!

    有14位网友表示赞同!

强辩

C语言一直是我的编程目标之一,这篇文章可以帮助我更快入门!

    有18位网友表示赞同!

龙吟凤

这个浅析应该能让我更深入地理解常量指针和指针常量之间的区别。

    有14位网友表示赞同!

ok绷遮不住我颓废的伤あ

期待一个清晰的对比,让我想明白常量指针和指针常量的实际情况!

    有20位网友表示赞同!

陌颜幽梦

学习编程需要不断积累经验和知识,这篇关于C语言的文章很有帮助!

    有9位网友表示赞同!

【深入浅析C语言中常量指针与指针常量的区别】相关文章:

1.蛤蟆讨媳妇【哈尼族民间故事】

2.米颠拜石

3.王羲之临池学书

4.清代敢于创新的“浓墨宰相”——刘墉

5.“巧取豪夺”的由来--米芾逸事

6.荒唐洁癖 惜砚如身(米芾逸事)

7.拜石为兄--米芾逸事

8.郑板桥轶事十则

9.王献之被公主抢亲后的悲惨人生

10.史上真实张三丰:在棺材中竟神奇复活

上一篇:《三国演义》中的铁血护卫:一段波澜壮阔的历史篇章(一) 下一篇:揭秘:生肖运势揭秘!三大生肖注定一生不平凡,福运连连