适合初学者的C语言常量类型的讲解

目录
  • 常量的定义
  • 常量的分类
    • 字面常量
    • const修饰的常变量
    • #define 定义的标识符常量
    • 枚举常量

生活中有一些是可变的量(比如你的年龄,身高,体重,对象)

还有一些不变的量(比如圆周率,性别,身份证号码)[哎,这里你说性别可变啊,我们只能笑一下,哈哈]

常量的定义

常量就是一个不变的量(比如圆周率,性别,身份证号码)

C语言中的常量和变量的定义的形式有所差异。

常量的分类

C语言中的常量分为以下以下几种:

  • 1.字面常量
  • 2.const 修饰的常变量
  • 3.#define 定义的标识符常量
  • 4.枚举常量

我们来演示一下

字面常量

字面常量,就是字面上就可以看出来的常量

int main()
{
    //字面常量演示
    3.14;//小数
    1000;//整数
    'w';//字符
    "abc";字符串

   return 0;
}

const修饰的常变量

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>//使用printf记得加这条代码

int main()
{
    //const修饰的常变量演示
   int a=100;//我们等一会儿会改变它
   a=10;
   printf("%d",a);
   return 0;
}

运行结果:

10

当我们在int a=100前加一个const来修饰

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

int main()
{
    //const修饰的常变量演示
   const int a=100;//在这儿
   a=10;
   printf("%d",a);
   return 0;
}

运行的结果:

运行错误,无实际输出

我们可以知道,const如果修饰一个变量,再给变量换一个值是不被允许的,相当于一个常量,但它还有变量的属性,所以我们就叫它是const 修饰的常变量

为什么说它具有变量属性呢?

我们来证明一下:

再新了解一个东西,数组,当我们来写代码的时候,有时候需要写很多的变量,很麻烦,这时候我们使用数组arr[ ],(a[ ],hin[ ]都随便,自己起一个名),在数组的[ ]中只能放常量,比如arr[5],相当于你直接定义了5个变量,里面是不能放变量的,根据这个原理我们来证明一下const 修饰的常变量是否具有变量属性

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

int main()
{
	const int a = 100;
	int arr[10] = {0};
	return 0;
}

可正常运行

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

int main()
{
	const int a = 100;
	int arr[a] = {0};
	return 0;
}

运行结果:

出现了错误,说明const 修饰的常变量具有变量属性

我有一个大佬(我认为的大佬,哈哈哈)是这样理解的:假设变量是一个空间,常量是一个实际值,变量用来容纳常量,const只是锁定了值,但是并不是把空间变成数值

#define 定义的标识符常量

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

#define MAX 100//here

int main()
{
printf("%d\n",MAX);
int a=MAX;
printf("%d\n",a);
return 0;
}

运行的结果:

100

100

可以看出来,MAX被定义为了100,无论是直接打印还是给变量一个值都可以,想用的时候就可以拿出来使用,这个MAX就是标识符常量,也就是#define 定义的标识符常量。(#define也是可以定义一个字符串的,不局限于数字)

枚举常量

我生活中一些值是可以一一列举出来的,比如性别,我们初步来了解一下,毕竟只是初始c语言,

#include <stdio.h>

enum Sex
{
    MALE,//男
    FEMALE,//女
    SECRET//不确定
};
//enum Sex未来的可能取值就是MALE,FEMALE,SECRET,它们三个就是枚举常量

int main()
{
    //枚举常量演示
    printf("%d\n", MALE);
    printf("%d\n", FEMALE);
    printf("%d\n", SECRET);
    //注:枚举常量的默认是从0开始,依次向下递增1的

注意,这里enum Sex里面三个枚举常量并不开辟空间,而且也是不能改变的,改变就会报错

到此这篇关于适合初学者的C语言常量类型的讲解的文章就介绍到这了,更多相关C语言 常量类型内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • C语言的常量和字符串

    目录 常量种类 字符串 总结 常量种类 C语言中,我们常使用的常量有以下几种: 字面常量 const常变量 #define定义的标识符常量 枚举常量 代码如下 #include<stdio.h> enum { //使用enum来建立枚举常量 papa,//不赋值默认从0开始,如若赋值,从此依次递增 mama, me, familynumber }; int main() { 3.1415926;//普通的字面常量 const int a = 100;//定义const常量 printf(&qu

  • C语言中指针常量和常量指针的区别

    在面试中我们经常会被面试官问到什么是常量指针,什么又是指针常量. 指针常量就是指针本身是常量,指针里面所存储的内容(内存地址)是常量,不能改变.但是,对应内存地址里存的内容是可以通过指针改变的. 常量指针就是指向常量的指针,指针中所存地址中对应的值是常量,不能通过指针来修改它的值.但是,指针自身不是常量,它自身的值可以改变,从而指向另一个地址. 指针常量与常量指针的声明 指针常量的声明:数据类型 * const 变量名. 常量指针的声明:数据类型 const * 变量名 或者 const 数据类

  • C语言中几种常量的认识和理解

    目录 前言 一.C语言常量是什么? 二.分别说明 1.字面常量 2.const修饰的常变量 3.#define定义的标识符变量 4.枚举常量 总结 前言 提示:以下是本篇文章正文内容,下面案例可供参考 一.C语言常量是什么? 常量是指在程序运行过程中其值不能被改变的量. C语言中常量可分为直接常量和符号常量.常量分为:字面常量,const修饰的常变量,#define定义的标识符常量,枚举常量. 二.分别说明 1.字面常量 字面常量:指的是直接输入到程序中的值. 例如:in myAge=19: m

  • C语言中的四种常量详解

    目录 1.字面常量 2.const修饰的常变量 3.#define定义的标识符常量 4.枚举常量 总结 1.字面常量 字面常量正如我们从字面上简单理解的那样,是最简单的常量,下面给出例子帮助大家理解: //1.字面常量 100; //整型常量 3.14; //浮点常量 "abfdj"; //字符串型常量 'w'; //字符型常量 int a[100]; //其中的100也是常量,此处需注意,[]中的数字必须是常量,后面我们会用到这个 2.const修饰的常变量 const修饰的变量具有

  • 浅谈C语言的变量和常量

    目录 变量的分类 1.全局变量 变量的作用域和生命周期 作用域 生命周期 常量 总结 生活中的有些值是不变的(比如:圆周率,性别,身份证号码,血型等等) 有些值是可变的(比如:年龄,体重,薪资). 不变的值C语言中用常量的概念来表示,变的值C语言中用变量来表示 //定义变量的方法: //类型 + 名字 int age = 150; float weight = 45.5f; char ch = 'w' 变量的分类 1.全局变量 2.局部变量(补充:只要放在{ }里的都是局部变量) 例如: int

  • C语言的常量,字符串,转义字符,注释你都了解吗

    目录 四种常量: 字符串: 转义字符 注释 总结 四种常量: 1.字面常量 如数字100,‘a’ 2.const修饰的常变量 const int n = 10 //常变量而非常量 不能用 int a[n]={1,2,3}定义数组 3.define定义的标识符常量 #define NUM 100 //NUM是define定义的常量 4.枚举常量: 生活中有些取值可以一一列举的如: 性别:男,女,保密 星期:1,2,3,4,5,6,7 //创建一种枚举类型 #include <stdio.h> e

  • C语言初识变量常量字符串转义符及注释方式简介

    目录 一:变量与常量 1.1:变量 1.1.1:变量的分类 1.1.2:变量的优先性 1.2:常量 1.2.1:#define定义 1.2.2:枚举常量 1.2.3:const修饰的常量 二:字符串介绍 三:转义字符的介绍 三:注释方式的介绍 一:变量与常量 1.1:变量 生活中有些值是可变的(比如年龄,体重,薪资). 下面我们举一个简单的例子表示变量的创建与使用. 1.1.1:变量的分类 局部变量 全局变量 这里主要介绍一下全局变量与局部变量作用域与生命周期. 作用域:通俗来讲,也就是一个变量

  • C语言入门之浅谈数据类型和变量常量

    目录 1.变量的作用域: 2.变量的生命周期: 1.字面常量,如:100,‘v’: 2.define宏定义的标识符常量 3.const修饰的常变量 4.枚举常量 总结 首先我们来罗列一下C语言的基本数据类型(未提及的后续将在关键字专题讲解): 类型名称 所占字节 char(字符型) %c 2 short(短整形) %d 2 int(整形) %d 4 long int(长整形) %ld 4 long long int(长整形) %lld 8 float(单精度浮点型) %f 4 double(双精

  • C语言常量介绍

    目录 什么是常量 常量都有哪些 这四种常量的特点.注意事项等等 1.字面常量: 2.const修饰的常变量 3.#define定义的标识符常量 4.枚举常量 总结 什么是常量 从字面上简单解释就是不变的量叫常量 常量都有哪些 字面常量 const修饰的常变量 #define定义的标识符常量 枚举常量enum 这四种常量的特点.注意事项等等 1.字面常量: 字面常量就是直接写出来的量: 有字符.数字.字符串等字面常量: 2.const修饰的常变量 开门见山:被const修饰的变量就不能在改变了,具

  • 适合初学者的C语言常量类型的讲解

    目录 常量的定义 常量的分类 字面常量 const修饰的常变量 #define 定义的标识符常量 枚举常量 生活中有一些是可变的量(比如你的年龄,身高,体重,对象) 还有一些不变的量(比如圆周率,性别,身份证号码)[哎,这里你说性别可变啊,我们只能笑一下,哈哈] 常量的定义 常量就是一个不变的量(比如圆周率,性别,身份证号码) C语言中的常量和变量的定义的形式有所差异. 常量的分类 C语言中的常量分为以下以下几种: 1.字面常量 2.const 修饰的常变量 3.#define 定义的标识符常量

  • 适合初学者的C语言字符串讲解

    这一篇博客我们来了解一下字符串,看下面这个我们熟知的也是最先学习的代码 "Hello world!" 这一堆的字母就是字符串字面值,简称字符串,每一个字母都是一个字符,字符串需要用" "双引号来引起,字符需要用’ '单引号来引起,就像下面 "Hello world!"  //字符串'a'  //字符'!'  //字符 字符串也算常量,上面三条都算字面常量,之前的讲常量的时候就举过这种例子 那么字符串有什么用呢? 假设我们要把下面的字符串存起来,那

  • 适合初学者的C语言数据类型的讲解

    之前说过写代码是为了解决生活中的问题,比如购物. 假设我们要买一本书,它的价格是10.5,是个小数,也可以是一个整数10,它的书名是钢铁是怎样炼成的,是一组字符串,就像svli@gikvw这些,里面每个称为字符. 我们要去用c语言来去存储这些信息呢,在c语言里面为了能够描述这些类型. 就把小数抽象出来一个数据类型,叫浮点型 把整数抽象出来一个数据类型,叫整型(就是上一个博客里面的int) 把字符抽象出来一个数据类型,就叫字符 10.5 -  小数  -  浮点型 10   -  整数  -  整

  • 适合初学者的C语言转义字符讲解

    什么是转义字符 今天我们来了解一下转义字符,转义字符顾名思义就是转变意思. 现在了解一下这些字符: 转义字符      释义    \?        在书写连续多个问号时使用,防止他们被解析成三字母词    \'        用于表示字符常量'    \“        用于表示一个字符串内部的双引号    \\        用于表示一个反斜杠,防止它被解释为一个转义序列符.    \a        警告字符,蜂鸣    \b        退格符    \f        进纸符   

  • python和c语言哪个更适合初学者

    C语言是编译型语言,经过编译后,生成机器码,然后再运行,执行速度快,不能跨平台,一般用于操作系统,驱动等底层开发. Python是编译型还是解释型这个界限并不明显,但大致上可以理解为解释型语言,执行速度慢,由于Python虚拟机,Python是可以跨平台的,Python高度集成适合于软件的快速开发. C语言中需要事先定义变量类型,以int类型为例,当定义一个int型变量后,就会在内存中开辟4个字节,再来进行初始化,由于长度是指定的,在运算过程中需要考虑,溢出,精度等问题. Python不需要事先

  • Go语言基础类型及常量用法示例详解

    目录 基础类型 概述 按类别有以下几种数据类型 数值类型 派生类型 变量 概述 单个变量声明 多个变量声明 基础类型 概述 在 Go 编程语言中,数据类型用于声明函数和变量.数据类型的出现时为了把数据分成所需要用大数据的时候才需要申请大内存,这样可以充分的列用内存. 按类别有以下几种数据类型 数值类型 布尔型 bool:布尔型的值只可以是常量 true 或者 false,默认值为 false. 字符串类型 string:编码统一为 UTF-8 编码标识 Unicode 文本,默认值为空字符串.

  • 适合初学者练习的C语言实现三子棋小游戏

    目录 一.写代码前明确下棋时的步骤与顺序 二 根据初步的主函数完成想要的代码 1.写一个函数来初始化棋盘 2.打印棋盘 3.玩家落子 4.电脑落子 5.判断胜负 三.三子棋实现代码 用简单的C语言来实现小时候玩的三子棋游戏,下面是人机对战,当然这个代码的电脑对手是人工智障而不是人工智能 一.写代码前明确下棋时的步骤与顺序 1.创建一个3*3的棋盘. 2.将上面创建的棋盘中每个格初始化成' '状态. 3.打印出初始化完成的棋盘 4.玩家落子 5.电脑落子 6.判断胜负 写代码之前梳理好大概的思路,

  • C语言变量类型与输出控制用法实例教程

    本文实例讲述了C语言变量类型与输出控制用法,有助于读者很好的对其进行总结与归纳.该实例分享给大家供大家参考借鉴之用.具体如下: 完整实例代码如下: /********************************************** **<Beginning C 4th Edition>Notes codes ** Created by Goopand ** Compiler: gcc 4.7.0 *******************************************

  • C语言 枚举类型(Enum)详解及示例代码

    在实际编程中,有些数据的取值往往是有限的,只能是非常少量的整数,并且最好为每个值都取一个名字,以方便在后续代码中使用,比如一个星期只有七天,一年只有十二个月,一个班每周有六门课程等. 以每周七天为例,我们可以使用#define命令来给每天指定一个名字: #include <stdio.h> #define Mon 1 #define Tues 2 #define Wed 3 #define Thurs 4 #define Fri 5 #define Sat 6 #define Sun 7 in

  • C语言 常量详解及示例代码

    C 常量 常量是固定值,在程序执行期间不会改变.这些固定的值,又叫做字面量. 常量可以是任何的基本数据类型,比如整数常量.浮点常量.字符常量,或字符串字面值,也有枚举常量. 常量就像是常规的变量,只不过常量的值在定义后不能进行修改. 整数常量 整数常量可以是十进制.八进制或十六进制的常量.前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,不带前缀则默认表示十进制. 整数常量也可以带一个后缀,后缀是 U 和 L 的组合,U 表示无符号整数(unsigned),L 表示长整数(long).

随机推荐