趣味C语言小白速通-常量和变量

前言

        本文针对C语言小白速通,不进行详细的C语言原理讲解,主打一个实用,高速,如有问题可在评论区评论,后续会出精讲版,敬请期待!

常量

程序中不变的量就是常量

int     a=1;
float   b=3.14
char    c=a
printf("hello")

        例如,上述的 "1" "3.14" "a" "hello"都是常量,这时你们会发现,常量各式各样都不一样,这是因为常量也是有类型的,就像杯子也有种类,保温杯、咖啡杯、胖胖杯等等

数值常量

        数值既指数字,在C语言中有整数和实数之分,不那么严谨的理解又可以理解为整数和小数,其中小数包含整数,例如5.0和5。同时数有正负之分,正号可以省略,负号不可以。

printf("+123")
printf("1234")
printf("-100")
printf("3.1415926")
printf("-11.34")

        上述printf("")中都是数值常量,但在实际的C语言世界的运行过程中,当常数值很大的时候常常会出现报错,这是因为常量有自己的存储空间,就是一个小盒子或者说是各位修仙者的空间戒指,空间大小有限,超过空间大小就会出错,同时整数和小数的空间大小又是不一样的,具体是多少依赖于其给定的数据类型。

字符常量

        例如a这个字母就是一个字符,为什么叫字符不是字母呢,因为字符范围更广,不仅仅包括大小写字母还包括一些常用的符号,例如'!' '@' '#' '$' '%' '^' '&' '*' '(' ')' '+',具体包括的字符是国际标准的ASCII表中的所有字符,一般特殊字符不算,例如m³。同时我们一般将单个字符放在单引号中,称其为单字符。

        但有一些特殊字符需要注意,既转义字符。一般表现形式为\+单字符,例如\n \t \r。字面意思理解就是将单字符的意思进行转变,代表特殊的功能。例如运行下述代码

#include <stdio.h>
 
void main()
{
	printf("我是\n掌管C语言的神");
} 

这时会输出

我是
掌管C语言的神

因为\n是转义字符,代表意思是换行,不作太多解释了,稍微理解一下就行。

常见的转义字符有

字符形式含义
\n换行符
\r回车符
\t水平制表符
\v垂直制表符
\'单引号
\"双引号
\?问号字符
\\反斜杠\
\f换页符
字符串常量

        区别于单个字符的字符常量,由n个单个字符组成字符串,n=0时表示空字符串,一般字符串用都放在双引号中,例如"hello"。这里需要注意以下几个内容

  • "'和" "是不一样的,""双引号中间没有内容表示空字符串," "中间有一个空格,空格也属于字符的一种。
  • 'a'和"a"是不一样的,前者是字符常量,后者是字符串常量,前者占有1个空间,后者占用两个(字符串隐藏了一个结束符要占一个空间);字符可以作加减处理,字符串不行。
符号常量

        当某个常量引用起来比较麻烦又经常要用的时候,我们可以定义为符号常量,非常典型的例子,圆周率Π。符号常量的定义格式为:

#define <符号变量名> <常量>

 <符号变量名>习惯性都是大写 <常量>可以是数值常量,也可以是字符串常量。

Π的定义举例

#define PI 3.14

         其表示PI将代表3.14,本质是替换,一般放在main函数之前,在main函数执行之前,就会先对程序中所有的PI用3.14进行替换

变量

        我们把程序中能改变的数据称为变量。变量就像一个空间戒指或是一个抽屉,不同类型的变量的空间大小不一样,放的东西类型也不一样。

        变量有四个基本属性

  1. 变量名:一个符合规则的标识符
  2. 变量类型:数据类型包含C语言库和自定义
  3. 变量位置:唯一空间地址
  4. 变量值:内容

         在接下来的讲述中,我会将变量比作银行卡,变量名既卡的别名(例如:帅哥的卡),变量类型既卡的类型,储蓄卡还是信用卡,Ⅰ类卡还是Ⅱ类卡;变量位置既卡号;变量值既余额。

变量的定义

        在你使用变量之前,首先你需要有这个变量吧,所以你要先定义,定义类似你办卡的过程,确定你卡的名字(变量名),卡类型(变量类型)和卡号(变量位置)。例如:

    int    i ;
    float  f ;
    double b ;
    char   ch;

         int、float、double、char都是数据类型,i、f、b、ch是对应的变量名,而变量的位置由编译器自动分配,具体是什么我们不关注,只需要知道有这个东西,但你真的想知道也很简单,但在这里不作讲解了,太晚了写完想睡觉了。

变量的赋值和初始化

        变量的既然是可变的,所以在程序运行过程中可能值会不断变化,这里就涉及到变量的赋值和初始化了。初始化就是赋初值,因为建立变量时,变量的位置可能是之前其他变量用过的,可能有残余内容,需要通过赋值清除残余的并使其得到一个你给它的值。初始化的意义重大,但我真的好困了,不想解释了,反正好处多多,记得初始化哦!

初始化的表现形式为:
变量类型 变量名=初始值
   int     a  = 1;
   float   b  = 3.14;
   char    c  = ppt;

 赋值(困了就一句话):等号左边的值给右边

变量名=值
a=3;
注意值由右向左传递,无论多长
a=b=c=d=e=1314;
传递顺序为:
1314 -> e -> d -> c -> b -> a

仙友们,走出新手村的第一步不知道感觉如何,学到这已然练气五层了,加把油,很快就要筑基了,希望各位早日成仙!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值