当前位置: 代码迷 >> 综合 >> C语言(四)-- 变量和常量
  详细解决方案

C语言(四)-- 变量和常量

热度:88   发布时间:2023-10-24 11:19:51.0

变量不过是程序可以操作的存储区域的名称。C语言中的每个变量都有一个特定的类型,该类型确定变量的内存大小和布局。可以存储在该内存中的值的范围;以及可以应用于该变量的一组操作。

变量的名称可以由字母,数字和下划线字符组成。它必须以字母或下划线开头。大写和小写字母是不同的,因为C区分大小写

C语言中的变量定义

变量定义告诉编译器在何处以及为变量创建多少存储空间。变量定义指定一种数据类型,并包含一个或多个该类型变量的列表。

在这里,类型必须是有效的C数据类型,包括char,w_char,int,float,double,bool或任何用户定义的对象;和variable_list可以包含一个或多个以逗号分隔的标识符名称。

int    i, j, k;
char   c, ch;
float  f, salary;
double d;

int i,j,k; 声明并定义变量i,j和k;它指示编译器创建名为int的i,j和k变量。

变量可以在其声明中进行初始化(分配初始值)。初始化程序由一个等号和一个常量表达式组成.

int d = 3, f = 5;    // declaration of d and f. 
int d = 3, f = 5;           // definition and initializing d and f. 
byte z = 22;                // definition and initializes z. 
char x = 'x';               // the variable x has the value 'x'.

对于没有初始化程序的定义:具有静态存储持续时间的变量隐式初始化为NULL(所有字节的值均为0);所有其他变量的初始值均未定义。

C语言中的变量声明

变量声明向编译器保证存在具有给定类型和名称的变量,以便编译器可以继续进行进一步的编译,而无需有关该变量的完整详细信息。变量定义仅在编译时具有其含义,编译器在链接程序时需要实际的变量定义。

当使用多个文件并且在其中一个文件中定义变量时,变量声明很有用。在程序链接时,这些文件中的一个将可用。在任何地方使用关键字extern声明变量。尽管可以在C程序中可以多次声明变量,但是只能在文件,函数或代码块中定义一次。

 

常量

常量是指程序在执行过程中可能不会更改的固定值。

常量可以是任何基本数据类型,例如整数常量,浮点常量,字符常量或字符串文字。也有枚举常量。

常量与常规变量的处理方式相同,只不过其值在定义后无法修改。

 

整数字面量

整数文字可以是十进制,八进制或十六进制常量。前缀指定基数或基数:十六进制为0x或0X,八进制为0,十进制为空。

整数文字也可以具有后缀,该后缀是U和L的组合,分别表示无符号和长整数。后缀可以是大写或小写,并且可以是任何顺序

212 / * Legal * /

215u / *合法* /

0xFeeL / *合法* /

078  / *非法:8不是八进制数字* /

032UU  / *非法:无法重复后缀* /

85 / *十进制* /

0213 / *八进制* /

0x4b / *十六进制* /

30 / *int* /

30u / * unsigned int * /  

30l /* long */

30ul /* unsigned long */

 

浮点文字

浮点文字具有整数部分,小数点,小数部分和指数部分。可以用十进制或指数形式表示浮点文字。

以小数形式表示时,必须包括小数点,指数或两者都包括在内。并且在表示指数形式时,必须包括整数部分,小数部分或两者。有符号数由e或E引入。

3.14159 / *合法* /

314159E-5L / *合法* /

510E / *非法:不完整的指数* /

210f / *非法:无小数或指数* /

.e55 / *非法:缺少整数或分数* /

 

字符常量

字符文字用单引号引起来,例如,“ x”可以存储在char类型的简单变量中。

字符文字可以是普通字符(例如'x'),转义序列(例如'\ t')或通用字符(例如'\ u02C0')。

C中的某些字符带有反斜杠时表示特殊含义,例如,换行符(\ n)或制表符(\ t)。

 

字符串文字

字符串文字或常量用双引号“”括起来。字符串包含与字符文字相似的字符:纯字符,转义序列和通用字符。可以使用字符串文字将长行分成多行,并使用空格分隔它们。

 

定义常数

C中有两种简单的方法来定义常量-

  • 使用#define预处理程序。

  • 使用const关键字。

#define预处理程序

使用#define预处理器定义常量的形式: #define identifier value

#include <stdio.h>#define LENGTH 10   
#define WIDTH  5
#define NEWLINE '\n'int main() {int area;  area = LENGTH * WIDTH;printf("value of area : %d", area); //输出:value of area : 50printf("%c", NEWLINE);return 0;
}

const关键字

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

#include <stdio.h>int main() {const int  LENGTH = 10;const int  WIDTH = 5;const char NEWLINE = '\n';int area;  area = LENGTH * WIDTH;printf("value of area : %d", area); //输出:value of area : 50printf("%c", NEWLINE);return 0;
}

 

  相关解决方案