首页 > 其他分享 >0基础学习C语言第一章:常量与变量详解

0基础学习C语言第一章:常量与变量详解

时间:2024-03-23 12:29:52浏览次数:18  
标签:字符 常量 符号 字面 C语言 详解 ASCII 变量

一、常量

定义:在程序运行过程中,其值不能被改变的量称为常量。

常用常量有以下几类:

1.整型常量

十进制整数形式

例如:234,-123

2.实型(浮点型)常量

十进制小数形式:由数字、小数点组成

例如:2.345、-23.345

指数形式:如:1.23e2(相当于1.23 x 10²)

由于在计算机输入输出时,无法表示上角或下角。故规定以字母e或E代表以10为底的指数。但应注意:e或E之前必须有数字,且e或E后面必须为整数。

3.字符型常量

普通字符:使用单引号括起来,例:'a'

字符常量是以字符对应的ASCII码值的二进制补码形式存储在计算机内存单元中,字符占1个字节。

例如:字符'a'的ASCII码值为97,补码为:01100001

转义字符:常用\开头的特殊字符,意思是将\后面的字符转换成另外的意义

常用的转义字符:

\'表示单个单引号

\"表示单个双引号

\\表示\

\?表示?

\n表示换行

\t表示将输出的位置跳到下一个tab位置,一个tab位置为8列

\o、\oo、\ooo,其中o代表一个八进制数字:表示与该八进制码对应的ASCII字符

例如:转义字符'\101',表示ASCII字符'A'

\xh[h...],其中h代表一个十六进制数字:表示与该十六进制码对应的ASCII字符

例如:转义字符'\x41',表示ASCII字符'A'

注意:可以表示任何可显示的字母字符、数字字符、专用字符、图形字符和控制字符。

4.字符串常量:用双引号把若干字符括起来

从其字面形式上即可识别的常量称为“字面常量”或“直接常量”,字面常量是没有名字的不变量。(以上常量皆是字面常量)

符号常量:用# define指令,指定用一个符号名称代表一个常量。

例如: # define PI 3.1416

注意:

行末没有分号;习惯上符号常量用大写表示;

解析:

在对程序进行编译前,预处理器先对PI进行处理,把所有的PI全部置换为3.1416。

在预编译后,符号常量已全部变成字面常量。

符号常量不占内存,只是一个临时的符号,在预编译后这个符号就不存在了。

二、变量

定义:变量代表一个有名字的,具有特定属性的一个存储单元。

功能:它用来存放数据,也就是存放变量的值。

特点:

在程序运行期间,变量的值是可以改变的。

变量必须先定义,后使用。

变量不能重复定义。

解读:

变量名实际上是以一个名字代表的一个存储地址。在对程序编译连接时由编译系统给每一个变量名分配对应的内存地址。从变量中取值,实际上是通过变量名找到相应的内存地址,从该存储单元中读取数据。

三、常变量

C99允许使用常变量。

定义常变量:

const 数据类型 常变量名 = 常变量值;

注意:通常常变量名全部大写表示。

问题:常变量与常量区别?

常变量具有变量的基本属性:有类型,占存储单元,只是不允许改变其值。

常变量是有名字的不变量,常量是没有名字的不变量。

问题:符号常量与常变量的区别?

符号常量使用# define预处理指令定义,指定用一个符号名称代表一个常量。它是一个临时符号,在预处理后,符号常量已全部置换为字面常量(符号常量不存在了)。符号常量不占存储单元。

常变量,占存储单元,有变量值,但该值不能改变。

推荐使用常变量,少使用符号常量。

四、标识符

C语言规定标识符只能由字母、数字、下划线组成,且不能是数字开头。也不能使用C语言之中的保留字或关键字作为标识符。C语言对大小写是严格区别的。

这章是0基础开始的一个必经之路,了解常量变量的含义和应用对我们接下来的学习是至关重要的,加油,让我们一起进步,我会帮助大家在我的经验上期总结一些学习的方法和注意的知识点,有什么不理解的欢迎私信哦,我也准备了一些资料帮助大家,欢迎大家滴滴,一起加油进步。

标签:字符,常量,符号,字面,C语言,详解,ASCII,变量
From: https://blog.csdn.net/ww120624/article/details/136964599

相关文章

  • 0基础学习C语言第二章:运算符与表达式
    表达式:表达式是c语言的主体,在c语言中,表达式由操作符和操作数组成。简单的表达式可以只有一个操作数。根据操作符的个数,可以将表达式分为简单表达式和复杂表达式,简单的表达式只含有一个操作符(如:5+5),而复杂的表达式则含有两个或者两个以上的操作符(如5+5+6*4);表达式是本身什么事情也......
  • 数据结构:详解【栈和队列】的实现
    目录1.栈1.1栈的概念及结构1.2栈的实现1.3栈的功能1.4栈的功能的实现1.5完整代码2.队列2.1队列的概念及结构2.2队列的实现2.3队列的功能2.4队列的功能的实现2.5完整代码1.栈1.1栈的概念及结构栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除......
  • java方法详解
    java方法详解方法是语句的集合。目的是解决一类问题。一个方法只完成一个功能,这样有利于后期的扩展。(单一职责原理)java都是值传递!有一个值copy的过程。publicclassDemo02{publicstaticvoidmain(String[]args){intmax=max(10,20);System.......
  • 杨辉三角C语言
    杨辉三角输出杨辉三角前10行#include<stdio.h>intmain(){ inta[10][10]; for(inti=0;i<10;i++){ a[i][0]=1; a[i][i]=1; } for(inti=2;i<10;i++) for(intj=1;j<i;j++) a[i][j]=a[i-1][j]+a[i-1][j-1]; for(inti=0;i<10;i++){ for(intj=0......
  • 输入8个整数放入一维数组w中,输出交换前的数组,找出其中的最大数和最小数并将他们分别与
    #include<stdio.h>intmain(){intw[8];inti,maxIndex=0,minIndex=0,temp;//用户输入8个整数printf("请输入8个整数:");for(i=0;i<8;i++){scanf("%d",&w[i]);}//假设第一个元素为最大和最小值......
  • C语言预编译#pragma宏的作用
    在嵌入式编程中,#pragma指令具有非常重要的作用,因为它允许开发者在不同的编译器之间传达特定的编译指令。由于嵌入式编程通常与硬件紧密相关,且资源有限,这些指令可以帮助开发者更有效地利用可用资源,优化程序,以及处理特定的硬件约束。以下是#pragma在嵌入式编程中的一些常见应用......
  • if、switch语句构成的选择结构详解
    前言:C语言是结构化的程序设计语言,这里的结构指的是顺序结构、选择结构、循环结构,C语言是能够实现这三种结构的,其实我们如果仔细分析,我们日常所见的事情都可以拆分为这三种结构或者这三种结构的组合,下文将讲述C语言中选择结构相关语句语法。一、if语句if语句分为单if语句、if......
  • 掌握C语言结构体,开启编程新世界
    ✨✨欢迎......
  • 数据结构——单向链表(C语言版)
    在数据结构和算法中,链表是一种常见的数据结构,它由一系列节点组成,每个节点包含数据和指向下一个节点的指针。在C语言中,我们可以使用指针来实现单向链表。下面将详细介绍如何用C语言实现单向链表。目录1.定义节点结构体2.初始化链表3.插入节点4.删除节点5.遍历链......
  • 函数的详解
    目录1.函数的概念2.库函数2.1库函数的概念2.2 标准库和头文件2.3库函数的使用方法2.4 头文件包含2.5 库函数文档的一般格式3.自定义函数3.1函数的与法形式3.2函数举例4.实参和形参4.1实参4.2形参5.return语句6.嵌套调用和链式访问6.1嵌套调用......