C语言中的数据表现形式

常量和变量

在C语言中,常量和变量都是可以用来存储和表示数据的,常量值在程序执行的过程中是不可变的,而变量是可变的

  • 常量的概念

    常量是不可变的量,C语言中数值可以用常量表示,常量可以表示各种数据类型的值

  • 变量的概念

    变量和常量是相对的,变量在程序执行过程中是可变的量,由变量名和变量值组成,变量名是一个标识,变量值是一个数据值,程序为每个变量开辟了存储空间,变量值就存储在这个空间当中,可以通过变量名访问这个空间。

  • 初始化和赋值的概念和异同

    变量需要声明并定义才可以使用,并且在声明和定义之后可进行对此赋值,其中第一次赋值,成为初始化。赋值是指为变量设定一个数值的过程。在声明变量的同时为其赋值的做法,称为初始化

  • 变量定义完成的两个功能

    1,声明变量 2,为变量分配存储空间
    第一个功能是为编译期服务的。第二个功能是在运行期完成的

C语言中基本数据类型

image

常用数据类型的输出例子:

# include<stdio.h>
void main() {

    int a;
    float f;
    char c;
    double d;

    a = 1;
    f = 3.14;
    c = 'a';
    d = 3.141516171819;

    printf("a = %d,f = %f,c = %c,d = %lf\n",a,f,c,d);
}

运行结果:a = 1,f = 3.140000,c = a,d = 3.141516

define 和 const 的使用

# include<stdio.h>
# define PI 3.14
void main() {
    const float pi = 3.14159;
    printf("%f\n",pi);
    printf("%f\n",PI);
}

运行结果:

3.141590
3.140000

C语言中的符号

image

32 个关键字及含义

关键字 含义
auto 声明自动变量 一般不使用
double 声明双精度变量或函数
int 声明整型变量或函数
struct 声明结构体变量或函数
break 跳出当前循环
else 条件语句否定分支(与 if 连用)
long 声明长整型变量或函数
switch 用于开关语句
case 开关语句分支
enum 声明枚举类型
register 声明积存器变量
typedef 用以给数据类型取别名(当然还有其他作用)
char 声明字符型变量或函数
extern 声明变量是在其他文件正声明(也可以看做是引用变量)
return 子程序返回语句(可以带参数,也看不带参数)
union 声明联合数据类型
const 声明只读变量
float 声明浮点型变量或函数
short 声明短整型变量或函数
unsigned 声明无符号类型变量或函数
continue 结束当前循环,开始下一轮循环
for 一种循环语句(可意会不可言传)
signed 生命有符号类型变量或函数
void 声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)
default 开关语句中的“其他”分支
goto 无条件跳转语句
sizeof 计算数据类型长度
volatile 说明变量在程序执行中可被隐含地改变
do 循环语句的循环体
while 循环语句的循环条件
static 声明静态变量
if 条件语句

unsigned int 和 int

# include<stdio.h>
void main() {
    unsigned int a = 6;
    int b = -20;
    (a + b > 6) ? puts("> 6") : puts(" <= 6");
}

运行结果:
> 6
解释:

不管如何,这无符号整型问题的答案是输出是 ">6"。原因是当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型。因此-20变成了一个非常大的正整数,所以该表达式 计算出的结果大于6。这一点对于应当频繁用到无符号数据类型的嵌入式系统来说是丰常重要的。

  • unsigned int 和 int 的区别

    unsigned 是无符号数.int是有符号数.二者占空间大小相同, 区别是最高位,int表示符号位,而unsigned表示数据位.所以 int可以表示负数,而unsigned不能. 当unsigned可以表示的正数范围比int大一倍.

getchar 和 putchar

# include <stdio.h>
void main() {
    char a, b, c;
    // 从键盘输入字符
    a = getchar();
    b = getchar();
    c = getchar();
    // 控制台输出字符
    putchar(a);
    putchar(b);
    putchar(c);
    printf("\n");
}

运行结果:

abc
abc
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容