1、定义常量

在 C语言中,常量有两种定义方式,分别是使用 #define和const。

1)#define(宏定义)

#define

2)const

可以使用 const 前缀声明指定类型的常量:const type variable = value;

例如,#include

#include

void main(){

//常量方式1

const int a = 18;

printf("我的年龄是%d\n", a);

const char nameStr[] = "cjavapy";

const int age = 30;

printf("我叫%s,%d岁\n",nameStr,age);

//常量方式2 修改一次可以改变全局 define本质就是替换

#define X 100 //不能有;

printf("数量%d个\n", X);

printf("数量%d个\n", X*X);

#define PI 3.1415

int R = 100;

printf("周长=%f,面积=%f\n", 2 * R*PI, PI*R*R);//f是实数

#define name "cjavapy"

printf("关键字是%s",name);

getchar();

}

2、const 与 #define 定义常量的区别

1)const 定义常量

不能直接修改,但是可以间接修改

可以通过直接修改内存进行修改

可以通过指针进行修改

2)#define 定义常量

不能通过指针进行修改,也不能通过内存进行修改,相当于真正意义的常量。

一个标识符被宏定义后,该标识符便是一个宏名。这时,在程序中出现的是宏名,在该程序被编译前,先将宏名用被定义的字符串替换,这称为宏替换,替换后才进行编译,宏替换是简单的替换。

例如,#include

#define VAR 10001

void main()

{

const int var = 1001;

printf("%d", var);

*(int *)(&var) = 101;// 转换常量指针为非常量指针,说明 constant 不算真正的常量

printf("\n%d", var);

printf("%d", VAR);// 不能取地址进行修改

getchar();

}

java中charconst_C语言常量相关推荐

  1. java中修饰常量的事_浅谈java中的声明常量为什么要用static修饰

    今天定义一个类常量,想着也只有这个类可以用到,就没用static关键字修饰.结果sonar代码检查提示: Rename this field "PERSON_TYPE_USER" ...

  2. Java中几种常量池的区分

    转载自  Java中几种常量池的区分 在java的内存分配中,经常听到很多关于常量池的描述,我开始看的时候也是看的很模糊,网上五花八门的说法简直太多了,最后查阅各种资料,终于算是差不多理清了,很多网上 ...

  3. java中null是常量吗_C_NULL Julia中的常量

    java中null是常量吗 Julia| C_NULL常数 (Julia | C_NULL Constant) C_NULL is a constant of Ptr{Nothing} type in ...

  4. 简单理解java中什么叫常量

    经常看到常量这个词,但是一般并没有太在意,之前一般就认为String定义的就是常量. 实际上,JAVA常量就是在程序中固定不变的值,是不能改变的数据.例如数字1.字符"a".浮点数 ...

  5. [转载] Java中变量与常量

    参考链接: Java中的实例变量隐藏 1.变量的定义:定义变量就是要告诉编译器这个变量的数据类型,这样编译器才知道需要分配多少空间给它,以及它能存放什么样的数据.在程序运行过程中空间的值是变化的,这个 ...

  6. java中为什么需要常量和变量的区别_Java中常量和最终变量之间的区别?

    Java中的常量 常量变量是其值固定的变量,程序中仅存在一个副本.声明常量变量并为其分配值后,就无法在整个程序中再次更改其值. 与C语言不同,Java(直接)不支持常量.但是,您仍然可以通过声明变量s ...

  7. Java中变量与常量

    1.变量的定义:定义变量就是要告诉编译器这个变量的数据类型,这样编译器才知道需要分配多少空间给它,以及它能存放什么样的数据.在程序运行过程中空间的值是变化的,这个内存空间就成为变量.为了便于操作,给这 ...

  8. java中 什么是常量、变量以及数据类型、注释方法有哪些

    文章目录 1. 变量 1.1 概念 1.2 变量使用注意事项 1.3 变量定义语法 1.4 变量声明规则(掌握) 1.5 Java语言基础(标识符中常见的命名规则)(了解) 2 常量 2.1 Java ...

  9. Java中的字符串常量池详细介绍

    Java中字符串对象创建有两种形式,一种为字面量形式,如String str = "droid";,另一种就是使用new这种标准的构造对象的方法,如String str = new ...

  10. java 字符串 常量_Java进阶——Java中的字符串常量池

    字符串常量池 JVM为了减少字符串对象的重复创建,其内部维护了一个特殊的内存,这段内存被成为字符串常量池(方法区中).实际上还有整型常量池.浮点型常量池等等.字符串常量池存放的是对象的引用,而不是对象 ...

最新文章

  1. MySQL 语句整理 2019-5-3
  2. Entity Framework快速入门笔记第四篇—ModelFirst
  3. 大厂面试喜欢考算法,该怎么破?
  4. 如何将 Pycharm 打造得更称手
  5. 转:ps aux指令詳解
  6. 怎样高效阅读一份深度学习项目代码?
  7. 计算机应用人机对话,什么是“人机对话”
  8. java post 403_求助啊。。。。。。给服务器POST JSON报403
  9. PSV1000刷黑商
  10. NOR Flash、NAND Flash和iNAND Flash的不同点
  11. 自锁时间电路plc_自锁与互锁电路的plc梯形图程序【图】
  12. H3C交换机配置认证方式
  13. Xmanager 5 远程连接linux图形界面
  14. (附源码)计算机毕业设计ssm党史知识竞赛系统
  15. LabVIEW编程LabVIEW开发 十六进制转换ASCII例程与相关资料
  16. java(反射机制)
  17. Java中字符串为什么不以\0结尾
  18. 当前时间节点的LiteOS评述 2018.9
  19. SolidKits增效设计工具集——装配体标准件自动统计解决方案
  20. HTML5期末大作业:个人主页网站设计——服装明星主页(7页)表格带留言板带音乐

热门文章

  1. 【unity】Vector3.AngleCrossDot
  2. Unity3D Timeline 工作流
  3. python访问服务器注册表,使用Python的Windows注册表访问(Winreg)
  4. 郝斌java教程下载_郝斌Java自学教程全集打包,视频教程下载
  5. Java模拟文件管理器
  6. linux如何远程装java_使用Shell远程给Linux安装JDK
  7. 工业循环冷却水处理设计规范_循环冷却水系统及其水处理
  8. 二维码生成,打包下载zip,BigDecimal的取值和计算,java发送http请求
  9. vue - webpack.dev.conf.js for FriendlyErrorsPlugin
  10. SQL Server 创建游标(cursor)