【constchar和char的区别,construction和construct的区别】

本文目录一览:1、constchar*和char*的区别是什么?constchar*和char*的区别是什么?constcha...

本文目录一览:

constchar*和char*的区别是什么?

const char*和char*的主要区别在于指针的可变性及其对指向内容的保护程度。指针的可变性:char*:是一个普通的指针,指向的内存位置可以改变,即可以重新指向其他内存地址。同时,通过该指针也可以修改所指向内存中的数据。const char*:是一个指向常量的指针,指针本身的值在初始化后不能改变。

虽然这些定义看上很类似,但是从某些细节方面可以进行准确的区分。在这里介绍一个比较方便的记忆方法:const距离变量名的距离代表const的修饰范围。const char* a; 其中const是距离a较远的,*离a比较近,此时可以记忆为*a是const的。不能修改*a,a[0],a-形式的变更。但是a本身可以指向其他字符串。

char 和 const char 都是 char 型变量。理论上来说,当变量未初始化,或未赋值时,你可以赋任意 值 给 它们。一旦 赋值 后,const char 型变量的值 就 不允许 更改,不允许再赋新值。而 char 型变量,你可以 随时 更新,愿赋新值 就可以赋新值。

const char **p1; char **p2=NULL; p1 = p2;//错误,为什么?我从其它网站上查到的:const char **是一个没有限定符的指针类型,它的类型是“指向有const限定符的char类型的指针的指针”。

const char*, char const*, char*const的区别问题几乎是C++面试中每次都会有的题目。事实上这个概念谁都有只是三种声明方式非常相似很容易记混。Bjarne在他的The C++ Programming Language里面给出过一个助记的方法:把一个声明从右向左读。

区别在于const char *是指向const char,同时char * const是指向char。首先,所指向的值不能更改,但指针可以更改。第二,所指向的值可以更改,但指针不能(类似于引用)。注:以下两种形式是等价的:const char *和char const *。

本文来自作者[简惜筠]投稿,不代表乘龙号立场,如若转载,请注明出处:https://www.cdyqh.com/miao/9021.html

(12)

文章推荐

发表回复

本站作者才能评论

评论列表(4条)

  • 简惜筠
    简惜筠 2026-08-24

    我是乘龙号的签约作者“简惜筠”!

  • 简惜筠
    简惜筠 2026-08-24

    希望本篇文章《【constchar和char的区别,construction和construct的区别】》能对你有所帮助!

  • 简惜筠
    简惜筠 2026-08-24

    本站[乘龙号]内容主要涵盖:乘龙号,生活百科,小常识,生活小窍门,百科大全,经验网

  • 简惜筠
    简惜筠 2026-08-24

    本文概览:本文目录一览:1、constchar*和char*的区别是什么?constchar*和char*的区别是什么?constcha...

    联系我们

    邮件:乘龙网络@sina.com

    工作时间:周一至周五,9:30-18:30,节假日休息

    关注我们