0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详解C语言变量和数据类型

玩转嵌入式 来源:玩转嵌入式 2023-12-11 10:40 次阅读

C语言大家都不陌生吧,计算机、电子信息通信工程、自动化等专业的必学课程,前面和大家介绍过C语言的历史和编程环境,今天再来介绍一下变量和数据类型。

C语言是一门静态类型的底层编程语言,也就是说任何变量都必须有一个确定的类型,并且该类型在被编译时是可知的。因此,在C语言编程时,每创建一个变量,就必须声明变量类型。从单片机编程的角度,声明一个变量,其数据类型为无符号整型uin8_t,名称为Val_Counter:

uint8_t Val_Counter; //数据类型为无符号整型,名称为Val_Counter;

0cb30c56-964d-11ee-8b88-92fbcf53809c.png

变量声明

1.变量的命名规范

所谓,无规矩不成方圆,变量的名字可以任意取,但是要遵循一定的命名规范,变量名可以包含任意的字母,但是区分大小写,也可以包含数字和下划线,但是不能以数字作为开头。

uint8_t val_counter;       //正确的变量声明;
uint8_t Val_Counter;      //正确的变量声明;
uint8_t Val_Counter100;//正确的变量声明;
uint8_t 1Val_Counter;    //错误的变量声明;

0cc5b4e6-964d-11ee-8b88-92fbcf53809c.jpg

命名规范举例

变量的命名虽有规范,但是取名字也有规范,要保证的大原则就是:变量名通俗易懂,一看就能知道其含义,避免直接用a,b,c,aa,kk,tt这种无章法的命名方式。

2.变量的初始化和赋值

变量一旦被合法声明了,那么就可以在编程时使用了,可以根据编程的需要给变量赋值。当然,任何变量都有初始值,在声明变量的时候可以给变量赋一个值。被赋的值与进制没有关系,可以写十进制,也可以写十六进制或者是二进制。

uint8_t val_counter1 = 10;       //初值为10;
uint8_t Val_Counter2 = 0x0A; //初值为10;

0cf601aa-964d-11ee-8b88-92fbcf53809c.jpg

变量初始化

也可以在程序中赋值,做计算。

#include 

int main(void)
{
    uint_8 Val_Counter1 = 10,Val_Counter2;
    Val_Counter2 = Val_Counter1 + 2;
    printf("%d",Val_Counter2);
}

0d0707ac-964d-11ee-8b88-92fbcf53809c.jpg

变量的应用

程序的“=”是赋值操作,更改变量的当前值时可以使用赋值操作,两边的数据类型要相同,表示把右边操作数的值赋给左边操作数。“=”是最简单的赋值运算符,除此之外,还有“-=”、“+=”、“*=”、“/=”、“|=”、“&=”、“%=”、“<<=”、“>>=”等。。。

#include 
 
int main()
{
   uint8_t a = 21,c; 
   c =  a;
   printf("Line 1 - =  运算符实例,c 的值 = %d
", c );
   c +=  a;
   printf("Line 2 - += 运算符实例,c 的值 = %d
", c );
   c -=  a;
   printf("Line 3 - -= 运算符实例,c 的值 = %d
", c );
}

0d1067b6-964d-11ee-8b88-92fbcf53809c.jpg

赋值变形运算

3.C语言常用的数据类型

C语言的变量数据类型,大致可以分为如下几类:

基本数据类型,如整型、浮点型、字符型、布尔型等;

衍生数据类型,如指针型、数组型、结构体struct、共用体union等;

枚举类型enum,适用于枚举值有限,且变量初值自动递加;

空类型,void,这种容易被忽略,它表示无类型或者无返回值的函数;

typedef型,就是定义别名,可以给现有数据类型改名字,便于记忆和归类,和结构体合用比较方便;

常量,用const来表示;

几种常见的数据类型如int、char、short、long、float、double等。

int,整型,至少占据2个字节;

char,字符型,至少占据1个字节;

short,短整型,至少占据2个字节;

long,长整型,至少占据4个字节;

float,浮点型;

long,双精度浮点型;

每种数据类型,都会占用不同的数据长度,但是因为编程环境/编译器的不同,每种类型的长度也不完全相同。只能说short 不会比 int 长, long 不会比 int 短。

对于整型数据类型而言,还有无符号整型,用unsigned来表示,变量加了unsigned之后,该变量的取值范围就从0开始、没有负数了。这在单片机编程中应用广泛。

unsigned char的范围从 0 开始,至少到 255

unsigned int的范围从 0 开始,至少到 65,535

unsigned short的范围从 0 开始,至少到 65,535

unsigned long的范围从 0 开始,至少到 4,294,967,295

因为数据类型有长度,所以在编程的时候需要注意变量的边界问题,不能让数据溢出。

各种类型的数据长度,其实是可以根据自己的编程环境/编译器进行测试的,用sizieof()就可以实现。

#include 
//计算数据类型的长度
int main(void) {
  printf("char size: %lu bytes
", sizeof(char));
  printf("int size: %lu bytes
", sizeof(int));
  printf("short size: %lu bytes
", sizeof(short));
  printf("long size: %lu bytes
", sizeof(long));
  printf("float size: %lu bytes
", sizeof(float));
  printf("double size: %lu bytes
", sizeof(double));
  printf("long double size: %lu bytes
", sizeof(long double));
}

0d325eac-964d-11ee-8b88-92fbcf53809c.jpg

数据类型长度检测

用C语言编程时,需要用到各种变量,而变量的命名规范也能反映出代码是否通俗易懂。所以,要想提高编程效率,先从变量命名规范和数据类型入手吧。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 计算机
    +关注

    关注

    19

    文章

    6651

    浏览量

    84562
  • C语言
    +关注

    关注

    180

    文章

    7533

    浏览量

    128803
  • 编程
    +关注

    关注

    88

    文章

    3441

    浏览量

    92409
  • 变量
    +关注

    关注

    0

    文章

    596

    浏览量

    28112
  • 数据类型
    +关注

    关注

    0

    文章

    228

    浏览量

    13499

原文标题:C语言高效编程第一步,搞定变量和数据类型

文章出处:【微信号:玩转嵌入式,微信公众号:玩转嵌入式】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    C语言中的基本数据类型

    C语言是非常重要的一门程序设计语言,学好C语言再去学习其他编程语言将变得很轻松,因为大部分语言的都有相同的共性存在。本节我们来讲解一下C
    发表于 04-26 17:33 1345次阅读
    C<b class='flag-5'>语言</b>中的基本<b class='flag-5'>数据类型</b>

    C语言中基本数据类型变量和常量的使用

    C语言中基本数据类型变量和常量的使用
    发表于 08-18 16:42 592次阅读
    C<b class='flag-5'>语言</b>中基本<b class='flag-5'>数据类型</b>、<b class='flag-5'>变量</b>和常量的使用

    变量和数据类型PPT教程

    变量和数据类型PPT教程程序是为执行一项任务而编写的有序指令集算法是解决问题的具体方法和步骤流程图是算法的图形化表现形式C语言的特点C程序的
    发表于 06-20 16:38

    单片机C语言基础入门:变量数据类型

    )圆周率(pi)等等。C变量定义有了关键字和标识符的规则就可以定义变量了,一般定义变量的表达式如下:[存储种类] 数据类型 [存储器
    发表于 09-20 14:46

    C语言基本数据类型,变量和常量

    ),float(单精度浮点型),double(双精度浮点型),signed(有符号) ,unsigned(无符号),long(长整型)数据数据类型的单词在C语言中称为关键字非基本
    发表于 01-16 11:33

    C语言数据类型有哪些?

    C语言数据类型(基础类型+结构体)
    发表于 12-25 07:06

    Verilog 变量声明与数据类型

    Verilog 变量声明与数据类型一Verilog语法中最基本的数据类型有 线网(wire),寄存器(reg)和整数(integer)三种类型,这三种
    发表于 08-10 14:01

    C预处理与C语言基本数据类型

    指令表:注意:宏名的书写由标识符与两边各两条下划线构成。C语言基本数据类型不同操作系统中数据类型所占字节数图解数据类型的其他分类:
    发表于 12-21 08:29

    单片机C语言中常用的基本数据类型分为哪几类

    不管在什么语言中,定义一个变量时必然要在内存中开辟一个相应大小的空间来存储该变量。不同的数据类型在内存所占的空间大小不同,其所能表示的数据
    发表于 02-28 06:46

    重视变量数据类型

    不管在什么语言中,定义一个变量时必然要在内存中开辟一个相应大小的空间来存储该变量。不同的数据类型在内存所占的空间大小不同,其所能表示的数据
    发表于 01-13 15:05 1次下载
    重视<b class='flag-5'>变量</b>的<b class='flag-5'>数据类型</b>

    C语言-基本数据类型与位运算

    这篇文章作为基础知识点,总结C语言的基本数据类型有哪些,浮点数的精度,整数变量的空间范围,变量定义语法,变量命名规则,浮点数打印格式,基本
    的头像 发表于 08-14 09:56 1280次阅读

    网络工程师学Python之变量和简单数据类型

    Python是一种广泛应用于编程和数据科学的高级编程语言,它支持许多不同类型变量和简单数据类型
    的头像 发表于 04-15 17:56 551次阅读

    MATLAB变量和数据类型的基本介绍

    在MATLAB中,变量和数据类型是非常重要的概念。
    的头像 发表于 07-05 09:44 1120次阅读

    ARRAY 数据类型变量

    要求 全局数据块已打开。 操作步骤 要声明一个 ARRAY 数据类型变量,请按以下步骤操作: 在“名称”(Name) 列中,输入变量的名称。 在“
    的头像 发表于 07-06 11:08 654次阅读

    C语言数据类型有哪些

    在 C 语言中,数据类型指的是用于声明不同类型变量或函数的一个广泛的系统。变量类型决定了
    发表于 03-20 10:56 162次阅读
    C<b class='flag-5'>语言</b><b class='flag-5'>数据类型</b>有哪些