绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
跟我从零开始学 C 语言系列(三)
2023-02-28 14:16:48
  
hi!我是渔火。今天开始跟我学,从零开始学C语言(三)
今天我们来理解下C语言中的常量。常量是在程序执行过程中的,其值不发生改变的量,分为直接常量和符号常量。直接常量又分为整型常量、实型常量、字符串量和字符串量。
1、整型常量。整型常量即整数,包括正整数,负整数和零。C语言中,整型常量可以用十进制、八进制和十六进制表示。
提示:
(1)在一个整型常量后面加一个字母u或U,认为是usigned int型。
(2)在一个整型常量后面加一个字母l或L,认为是long int型。
2、实型常量。实型常量即实数,又称为浮点数。C语言中,实数只能用十进制的形式表示,实数的表示方法有两种:小数形式和指数形式。
(1)小数形式:由整数部分、小数点和小数部分组成,当整数部分或者小数部分为0时,可以省略不写,但小数点不可以省略。
(2)指数形式:由尾数部分、字母E或e和指数部分组成,格式为:±尾数E指数。
提示:
(1)以小数形式表示实数时,必须要有小数点,并且小数点的前、后至少一边要有数字。
(2)以指数形式表示实数时,字母E的前后必须有数字,并且指数部分只能是整数。
(3)实型常量默认为是double型的实数,如果在数的后面加字母f或F,则认为是float型的实数。
3、字符型常量。字符常量指单个字符,用一对单引号以及其括号所括起来的字符来表示。在C语言中,字符常量有以下特点:(1)、字符常量只能用单引号括起来,不能用双引号或其他括号。(2)字符常量只能是单个字符,不能是字符串。(3)、字符可以是ASCII字符集的任意字符/
小白提示:
对于控制符与不可见字符,在C语言中通过转义字符来表示。转义字符是用’\‘开头后面加上一个字符或用八进制、十六进制表示的ASCII码值组成。’\‘的作用是改变其后面的字符或ASCII码值的原有意义,转义为另外的含义。转义字符形式上由多个字符组成,但它是一个字符常量,只代表一个字符。
接下来我们来看一个转义字符使用例子。
【1.1】转义字符使用
#include<stdio.h>//2023.1.27 渔火 www.linuxmi.comint main(){  char b,c,d,e;  b='\43';  c='\103';   d='\x2a';  e='\x41';  printf("b=%c,c=%c,d=%c,e=%c\n",b,c,d,e);  printf("\"good\40morning!\b\"!\n");  printf("\123456"); //2023.1.27 渔火 www.linuxmi.com  return ;}
运行结果如下:
分析:
(1)printf("b=%c,c=%c,d=%c,e=%c\n",b,c,d,e);使用printf()函数输出char型变量啊b、c、d、e的值,由于b='\43',即将转义字符'\43'赋值给变量b,则系统会将'\43'转换为八进制数据所对应的”#“,因此b=#,其余变量的值可以采用同样的方法计算出来。
(2)printf("\"good\40morning!\b\"!\n");
使用printf()函数输出字符串"\"good\40morning!\b\"!\n"时,其中的转义字符会转换为相应的字符输出,即将”\“转换为”"“输出”\40“转换为空格,”\b“使光标回退一位,然后在此位置上使用”\“输出一个”'“.
(3)printf("\123456"); 使用printf()函数输出字符串”"\123456"“时,其中的转义字符、123转为相应的字符S输出,456原样输出。
4、字符串常量。字符串常量是由一对双引号""括起来的零个或多个字符序列。字符串中可以使用空格字符、转义字符和其他字符,也可以使用汉字等文字符号。字符串中还可以使用空字符。字符串的长度等于该字符串中所包含的有效字符的个数。
提示:在字符串中如果遇到'\0'则认为该字符串结束。如果字符串中有转义字符,则一个转义字符作为一个字符。可以使用strlen()函数来计算字符串的长度。
在C语言中,可以用一个标识符来表示一个常量,称之为符号常量。符号常量在使用之前必须先定义,其一般形式为:#define 标识符 常量值。其中#define是一条编译预处理命令,称为宏定义命令,其功能是把该标识定义为其后的常量值,该标识符称为符号常量。一个#define命令只能定义一个符号常量,若要定义多个符号常量,需要使用多个#define命令。
接下来我们来看一个有关符号常量的例子。
【2.1】利用符号常量计算价格
#include<stdio.h>#define PRICE 8 //2023.1.27 渔火 www.linuxmi.comint main(){  int num,total;        //num表示购买商品的数量,total表示总价款   num=11;  total=num*PRICE;      //PRINCE是符号常量,表示单价8   printf("总价格为:%d\n",total); //2023.1.27 渔火 www.linuxmi.com  return ;}
运行结果如下:

分析:当商品价格发生改变时,只需要修改PRICE的值,其他部分不需要改动。
符号常量的使用,可以为编写程序提供很多好处:(1)增加程序的可读性。(2)提高程序的可维护性。(3)简化程序代码。(4)方便数组的定义。

相关链接:

  1. https://www.linuxmi.com/learn-c-language-from-scratch-1.html

  2. https://www.linuxmi.com/learn-c-language-from-scratch-2.html

  3. https://www.linuxmi.com/learn-c-language-from-scratch-3.html

  4. https://www.linuxmi.com/learn-c-language-from-scratch-4.html





来自:Linux迷
链接:https://www.linuxmi.com/learn-c-language-from-scratch-4.html
分享好友

分享这个小栈给你的朋友们,一起进步吧。

C语言编程开发
创建时间:2019-12-03 10:46:09
C语言C++知识内容传递,让编程变得更容易。
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

栈主、嘉宾

查看更多
  • jasonhsp
    栈主
  • gaokeke123
    嘉宾

小栈成员

查看更多
  • ?
  • 小尾巴鱼
  • karspb
  • nt1979
戳我,来吐槽~