首页 > 其他分享 >C语言学习随笔-03 基本语法

C语言学习随笔-03 基本语法

时间:2024-01-05 17:12:13浏览次数:39  
标签:语句 03 函数 声明 C语言 随笔 标识符 变量

  • c语言程序由函数构成,每个函数可以实现一个或多个功能。
  •  一个正规程序可以有多个函数,但是有且只有一个主函数。
  •  函数只有在被调用的时候才执行,主函数由系统调用执行。
  •  函数的格式必须按照规范书写。
  •  C 语言程序文件的后缀为 .c

1、C的令牌(Token):C程序由各种令牌组成,令牌可以是关键字、标识符、常量、字符串值,或者是一个符号。例如,下面的 C 语句包括五个令牌:

 printf("Hello, World! \n");

这五个令牌分别是:
①、分号(;):在程序中,分号是语句结束符,也就是说,每个语句必须以分号结束,它表明一个逻辑实体的结束。
②、注释: // 单行注释 /**/ 多行注释
③、标识符:在编程语言中,标识符是用户编程时使用的名字,变量、常量、函数、语句块都有名字。是用来标识某个实体的一个符号,是对变量名、函数名、标号和其他各种用户定义的对象命名。
  •  1.标识符由字母、数字、下划线组成,并且首字母不能是数字。
  •  2.不能把C的关键字作为用户的标识符,例如:if、for、while等。(注:标识符不能和C语言的关键字相同,也不能和用户自定义的函数或C语言库函数同名)
  •  3.标识符长度是由机器上的编译系统决定的,一般的限制为8字符,(注:8字符长度限制是C89标准,C99标准已经扩充长度,其实大部分工业标准都更长)。
  •  4.标识符对大小写敏感,即严格区分大小写。一般对变量名用小写,符号常量命名用大写。(注:C语言中字母是区分大小写的,因此score、Score、SCORE分别代表三个不同的标识符)
  •  5.标识符命名应做到"见名知意",例如,长度(外语:length),求和、总计(外语:sum),圆周率(外语:pi)

④、关键字:关键字不能作为变量名、常量名或其他标识符名称。
auto  声明指定变量
     break  跳出当前循环
     acse  开关语句分支
     char  声明字符型变量或函数返回值类型
     const  定义常量,如果一个值被const修饰,那么它的值就不能再被改变
     continue  结束当前循环,开始下一轮循环
     default  开关语句中的“其他”分支
     do  循环语句的循环体
     double  声明双精度浮点型或函数返回值类型
     else  条件语句否定分支(与if连用)
     enum  声明枚举类型
     extern  声明变量或函数是在其他文件或本文件的其他位置定义
     float 声明单精度浮点型或函数的返回值类型
     for  一种循环语句
     goto  无条件跳转语句
     if  条件语句
     int  声明整型变量或函数
     long  声明长整型变量或函数返回值类型
     register  声明寄存器变量
     return  子程序返回语句(可以带参数,也可以不带参数)
     short  声明短整型变量或函数
     signed  声明有符号类型变量或函数
     sizeof  计算数据类型或变量长度(即所占字节大小)
     static  声明静态变量
     struct  声明结构体变量
     switch  用于开关语句
     typedef  用于给数据类型取别名
     unsigned  声明无符号类型变量或函数
     union  声明共用体类型
     void  声明函数无返回值或无参数,声明无类型指针
     volatile  说明变量在程序执行中可以隐含的改变
     while  循环语句循环条件
⑤、C中的空格:只包含空格的行,被称为空白行,可能带有注释,C 编译器会完全忽略它。

标签:语句,03,函数,声明,C语言,随笔,标识符,变量
From: https://www.cnblogs.com/Jx153875/p/17947662

相关文章

  • 【JDK+jenkins+gitee实现CI/CD(之三)】 jenkins拉取gitee代码WebHook返回403或404错误
     先上几张让我纠结了很多天的截图  以上是在我配置好jenkins和gitee令牌后一直出现的错误,查询了很多天资料后,确认造成的主要原因就是权限问题我的Jenkins 是最新的版本2.426.2,说下以下我使用过但无效果的办法,这些方法不能解决我提交代码后Jenkins触发WebHook的403问题......
  • Pod Init Error: force_encoding': can't modify frozen String (FrozenError)
    热烈欢迎,请直接点击!!!进入博主AppStore主页,下载使用各个作品!!!注:博主将坚持每月上线一个新app!! 如下图所示,切换Xcode为Xcode13。 ......
  • knex迁移 - 'ER_INVALID_DEFAULT: 'timestamp'的默认值无效
    在Knex中使用.timestamp()方法时,默认情况下会为该列设置当前时间戳作为默认值。然而,根据你的错误提示,数据库可能不支持此默认值。为了解决这个问题,你可以尝试以下方法:如果你的数据库支持DEFAULTCURRENT_TIMESTAMP,你可以尝试在列定义中添加defaultTo(knex.fn.now(......
  • 如何将视频上传到可用于HTML5 <video> 标签的 'src' 属性的平台?
    要将视频上传到可用于HTML5<video>标签的'src'属性的平台,您需要遵循以下步骤:1.选择一个支持视频上传的平台,例如YouTube、Vimeo或自建服务器。2.注册并登录到所选平台。3.创建一个新的视频项目或上传您的视频文件。4.获取视频的嵌入代码或URL。这通常可以在平台的......
  • 讲解'BatchNorm2d' object has no attribute 'track_running_stats'
    讲解'BatchNorm2d'objecthasnoattribute'track_running_stats'在使用深度学习框架PyTorch进行模型训练时,有时可能会遇到以下错误提示:plaintextCopycode'BatchNorm2d'objecthasnoattribute'track_running_stats'这个错误提示通常与PyTorch版本升级或代码中的一些配......
  • 2038年MySQL5.7和MariaDB 10.6自动终止服务进程。MySQL 8.0.31未受影响。
    2038年MySQL5.7和MariaDB10.6自动终止服务进程。MySQL8.0.31未受影响。14年内,必须升级MySQL5.7数据库,重要的事情说三遍。见下面截图[Warning]Currenttimehasgotpastyear2038.Validatingcurrenttimewith5iterationsbeforeinitiatingthenormalservershutdownpr......
  • stm32实战之su-03t语音模块固件的制作与烧录
    su-03t简介SU-03T是一款低成本、低功耗、小体积的离线语音识别模组,能快速应用于智能家居,各类智能小家电,86盒,玩具,灯具等需要语音操控的产品,SU-03T也具备强大的软件开发能力,我们可以在“智能公元”平台上实现语音固件的零代码开发,提高工作效率。管脚定义其中需要注意的是UART0的B0......
  • N32G003 A版 SWD口配置成IO了 SWD进不去调试解决方法
    如果你的N32G003A版的SWD口被配置成了IO,并且现在无法通过SWD进行调试,你可以尝试以下方法来恢复SWD调试功能:首先,确保BOOT0引脚为低电平,然后按下复位按钮,这将使芯片复位并进入Bootloader模式。在Bootloader模式下,打开SWD功能。具体来说,需要将系统控制寄存器的SWD_USE_IO时钟控制......
  • NeurIPS'23 Paper Digest | PromptTPP: Prompt Pool 与时序点过程模型的持续学习
    为期一周的人工智能和机器学习领域顶级会议 NeurIPS 已于当地时间 12 月 16 日圆满结束。蚂蚁集团有 20 篇论文被本届会议收录,其中《Prompt-augmented Temporal Point Process for Streaming Event Sequence》由蚂蚁集团研究并撰写,作者包括薛思乔、王言、褚志轩、师......
  • NeurIPS'23 Paper Digest | PromptTPP: Prompt Pool 与时序点过程模型的持续学习
    为期一周的人工智能和机器学习领域顶级会议 NeurIPS 已于当地时间 12 月 16 日圆满结束。蚂蚁集团有 20 篇论文被本届会议收录,其中《Prompt-augmented Temporal Point Process for Streaming Event Sequence》由蚂蚁集团研究并撰写,作者包括薛思乔、王言、褚志轩、师......