常量类型(五种):

字面常量(2,3,6....) ;                           enum 定义的枚举常量;

字符常量('a','b'....) ;                          const 定义的常变量;

#define 定义的 宏常量.

' * ' 的功能:

1): * 在两个变量或常量之间  =>  表示乘法 (a*b,a*10 ...);

2):* 左边是类型,右边是变量时 => 表示声明 声明该变量为一个指针变量;

3)* 左边为空右边为指针变量时 => 表示解引用(指向) .

指针相关:

1) 定义指针变量时,系统会将*和变量相结合 =>(int* p,r;//定义了一个指针变量p,一个整形变量);

2) 定义/使用指针时要注意(野指针\空指针\失效指针)尤其是野指针!因此要将指针初始化(*p=NULL);

3) 指针大小在32位操作系统占4字节,64位操作系统占8字节;

4) 使用指针变量,要明确指针本身的值(存储的是地址) , 以及指针指向的值(指针变量所指的实体)(解引用);

5) 指针类型决定了指针的加一的能力.(p = p + 1  =>  p = p + sizeof(typename)*1);

6) 指针类型决定了指针对内存操作的能力.

const 和指针

const  int *p = &a     const 在 * 的左边,const 修饰的是指针的指向能力.等价于  int const *p = &a,即不可更改*p的值,但是可以更改p本身的值: p=&b true,但*p = 200 false

int * const p =&a       const 在 * 的右边,const 修饰的是指针自身的值,即不可更改p本身的值,但可以更改*p的值 p=&b false,但*p = 200 true.

有关指针和C语言中的常量的更多相关文章

  1. C语言中字符串常量到底存在哪了?

    常量存储总结局部变量.静态局部变量.全局变量.全局静态变量.字符串常量以及动态申请的内存区 1.局部变量存储在栈中2.全局变量.静态变量(全局和局部静态变量)存储在静态存储区3.new申请的内存是在堆 ...

  2. 收藏:C语言中字符串常量到底存在哪了?

    来源:https://www.cnblogs.com/jaysir/p/5041799.html 常量存储总结局部变量.静态局部变量.全局变量.全局静态变量.字符串常量以及动态申请的内存区 1.局部变 ...

  3. Go语言中的常量

    1 概述 常量,一经定义不可更改的量.功能角度看,当出现不需要被更改的数据时,应该使用常量进行存储,例如圆周率.从语法的角度看,使用常量可以保证数据,在整个运行期间内,不会被更改.例如当前处理器的架构 ...

  4. 004_go语言中的常量

    代码演示 package main import "fmt" import "math" const s string = "constant&quo ...

  5. Rust语言中的常量,变量,运算符,数据类型

    简单练练, 夏天太热. const MAX_POINTS: u32 = 100_100; fn main() { let mut x = 5; let y = 5; let y = y + 1; le ...

  6. C语言中的指针学习(小黑板)

    指针是C语言中的精华所在,也是C语言的危险之在,今天又重现温习了一下C语言,做了一下总结. 欢迎批阅. (1)指针的含义指针的本质也是数据类型,它是指向地址的变量.例如: { int a = 10; ...

  7. *C语言有关指针的变量声明中的几个易错点

    转至:http://my.oschina.net/ypimgt/blog/108265   Technorati 标签:  指针, typedef, const, define 我们都知道,至少听说过 ...

  8. 这样子来理解C语言中指针的指针

    友情提示:阅读本文前,请先参考我的之前的文章<从四个属性的角度来理解C语言的指针也许会更好理解>,若已阅读,请继续往下看. 我从4个属性的角度来总结了C语言中的指针概念.对于C语言的一个指 ...

  9. windev中的内存机制及其与C语言中的内存指针相似性(一)

    windev中的内存机制,是初入windev世界必须要越过的一道高山,以下我的理解和经验未必都对,如有错误或遗漏,以后再纠正或补充!另外,以下内容,咱先谈应用,再说对机制的认识和理解. 一.新建表单, ...

随机推荐

  1. GitHub & GitHub Package Registry

    GitHub & GitHub Package Registry npm https://github.blog/2019-05-10-introducing-github-package-r ...

  2. perl 在windows上获取当前桌面壁纸

    更多 #!/usr/bin/perl # 在windows获取当前的桌面壁纸 # See also: https://www.winhelponline.com/blog/find-current-w ...

  3. NGK每日快讯」2021.1.27日NGK公链第85期官方快讯!

  4. JavaScript中判断对象是否属于Array类型的4种方法及其背后的原理与局限性

    前言 毫无疑问,Array.isArray是现如今JavaScript中判断对象是否属于Array类型的首选,但是我认为了解本文其余的方法及其背后的原理与局限性也是很有必要的,因为在JavaScrip ...

  5. emplace_back与push_back

    资料参考: https://blog.csdn.net/p942005405/article/details/84764104 实际精华在评论中,转载如下: STL的实现版本很多,VS.GCC版本不同 ...

  6. 使用RSEM进行转录组测序的差异表达分析

    仍然是两年前的笔记 1. prepare-reference 如果用RSEM对比对后的bam进行转录本定量,则在比对过程中要确保比对用到的索引是由rsem-prepare-reference产生的. ...

  7. 简单&&大数取模

    Big Number Problem Description As we know, Big Number is always troublesome. But it's really importa ...

  8. vue 递归调用组件出错

    报错信息: Avoid mutating an injected value directly since the changes will be overwritten whenever the p ...

  9. 网络地址转换NAT的两种模式(概念浅析)& IP溯源

    由于全球IPv4地址越来越少.越来越贵,因此大到一个组织,小到一个家庭一个人都很难获得公网IP地址,所以只能使用内网地址,从而和别人共享一个公网IP地址.在这种情况下,NAT技术诞生. 翻译 NAT( ...

  10. POJ-1459(最大流+EK算法)

    Power Network POJ-1459 这题值得思索的就是特殊的输入,如何输入一连串字符.这里采用的方法是根据输入已知的输入格式,事先预定好要接受的数据类型. 这里套用的板子也是最大流的模板,但 ...