C 语言注释和变量详解
C 语言中的注释
C语言中可以使用注释来解释代码并使其更具可读性。它还可以在测试替代代码时防止执行。
单行注释
单行注释以两个斜杠 (//
) 开头。
//
和行末之间的任何文本都会被编译器忽略(不会被执行)。
此示例在代码行之前使用单行注释:
// 这是一个注释
printf("Hello World!");
此示例在代码行的末尾使用单行注释:
printf("Hello World!"); // 这是一个注释
C 多行注释
多行注释以 /*
开头,以 */
结尾。
/*
和 */
之间的任何文本都将被编译器忽略:
/* 以下代码将打印单词 Hello World!
到屏幕上,这太棒了 */
printf("Hello World!");
单行还是多行注释?
由您决定使用哪种。通常,我们使用 //
作为短注释,使用 /* */
作为较长的注释。
需要注意的是:在 C99 版本(1999 年发布)之前,您只能在 C 中使用多行注释。
C 语言中的变量
变量是用于存储数据值(如数字和字符)的容器。在 C 语言中,有不同类型的变量(使用不同的关键字定义),例如:
- int - 存储整数(没有小数点),例如 123 或 -123
- float - 存储带小数点的浮点数,例如 19.99 或 -19.99
- char - 存储单个字符,例如 'a' 或 'B'。字符值用单引号包围
声明(创建)变量
要创建变量,请指定类型并为其分配值:
语法:
type variableName = value;
其中:
type
是 C 语言的类型之一(例如int
)variableName
是变量的名称(例如x
或myName
)- 等号用于将值分配给变量
因此,要创建一个用于存储数字的变量,请看以下示例:
int myNum = 15;
您还可以声明一个变量而不分配值,稍后分配值:
// 声明变量
int myNum;
// 为变量分配值
myNum = 15;
输出变量
可以使用 printf()
函数输出值/打印文本:
printf("Hello World!");
在许多其他编程语言(例如 Python、Java 和 C++)中,您通常会使用 print
函数显示变量的值。然而,这在 C 语言中是不可能的:
int myNum = 15;
printf(myNum); // 什么也不会发生
要在 C 语言中输出变量,您必须熟悉称为“格式说明符”的东西。
格式说明符
格式说明符与 printf()
函数一起使用,告诉编译器变量存储的数据类型。它基本上是变量值的占位符。
格式说明符以百分比符号 %
开头,后跟一个字符。
例如,要输出一个 int
变量的值,您必须使用格式说明符 %d
或 %i
放在双引号内,并在 printf()
函数内使用:
int myNum = 15;
printf("%d", myNum); // 输出 15
要打印其他类型,请使用 %c
用于 char
和 %f
用于 float
:
// 创建变量
int myNum = 15; // 整数 (whole number)
float myFloatNum = 5.99; // 浮点数
char myLetter = 'D'; // 字符
// 打印变量
printf("%d\n", myNum);
printf("%f\n", myFloatNum);
printf("%c\n", myLetter);
要将文本和变量结合起来,请在 printf()
函数内用逗号将它们分隔开:
int myNum = 15;
printf("My favorite number is: %d", myNum);
要在单个 printf()
函数中打印不同的类型,您可以使用以下方法:
int myNum = 15;
char myLetter = 'D';
printf("My number is %d and my letter is %c", myNum, myLetter);
您将在下一章了解更多关于数据类型的内容。
更改变量值
注意:如果您为现有变量分配新值,它将覆盖之前的值:
int myNum = 15; // myNum is 15
myNum = 10; // 现在 myNum 是 10
您还可以将一个变量的值分配给另一个变量:
int myNum = 15;
int myOtherNum = 23;
// 将 myOtherNum (23) 的值分配给 myNum
myNum = myOtherNum;
// myNum 现在是 23,而不是 15
printf("%d", myNum);
或者将值复制到空变量:
// 创建一个变量并将值 15 赋予它
int myNum = 15;
// 声明一个变量而不赋予它值
int myOtherNum;
// 将 myNum 的值分配给 myOtherNum
myOtherNum = myNum;
// myOtherNum 现在的值为 15
printf("%d", myOtherNum);
最后
为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:Let us Coding
,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎 点赞、收藏、关注
C 语言注释和变量详解的更多相关文章
- mysql show variables系统变量详解
mysql系统变量详解 mysqld服务器维护两种变量.全局变量影响服务器的全局操作.会话变量影响具体客户端连接相关操作. 服务器启动时,将所有全局变量初始化为默认值.可以在选项文件或命令行中指定的选 ...
- 【转】Eclipse Java注释模板设置详解
Eclipse Java注释模板设置详解 设置注释模板的入口: Window->Preference->Java->Code Style->Code Template 然后 ...
- Maya 常用环境变量详解
Maya 常用环境变量详解 前言: Maya 的环境变量让用户可以很方便的自定义 Maya 的功能. 在 Maya 的 Help 帮助文档中有专门的一个章节< Environment Varia ...
- Linux C 语言之 Hello World 详解
目录 Linux C 语言之 Hello World 详解 第一个 C 语言程序 程序运行原理 编译,链接 运行时 链接库 编译器优化 Hello World 打印原理 stdout, stdin 和 ...
- [转]C语言字节对齐问题详解
C语言字节对齐问题详解 转载:https://www.cnblogs.com/clover-toeic/p/3853132.html 引言 考虑下面的结构体定义: typedef struct{ ch ...
- R语言服务器程序 Rserve详解
R语言服务器程序 Rserve详解 R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大. R语言作为统计学一门语言,一直在小众领域闪耀着光芒.直到 ...
- C语言解决约瑟夫问题详解的代码
将开发过程中比较重要的一些内容做个收藏,下面的内容是关于C语言解决约瑟夫问题详解的内容,希望能对码农有帮助. #pragma once #include<vector> class PRO ...
- 【转载】 Eclipse注释模板设置详解
Eclipse注释模板设置详解 网站推荐: 金丝燕网(主要内容是 Java 相关) 木秀林网(主要内容是消息队列)
- net core体系-web应用程序-4net core2.0大白话带你入门-5asp.net core环境变量详解
asp.net core环境变量详解 环境变量详解 Windows操作系统的环境变量在哪设置应该都知道了. Linux(centos版本)的环境变量在/etc/profile里面进行设置.用户级的 ...
- Shell学习之Bash变量详解(二)
Shell学习之Bash变量详解 目录 Bash变量 Bash变量注意点 用户自定义变量 环境变量 位置参数变量 预定义变量 Bash变量 用户自定义变量:在Bash中由用户定义的变量. 环境变量:这 ...
随机推荐
- PRINCE2系列一基于项目情境自定义解决方案
PRINCE2(PRojects IN Controlled Environments,受控环境下的项目管理) 对项目进行了如下定义:项目是按照一个被批准的商业论证,为了交付一个或多个商业产品而创建的 ...
- 影刀rpa第一个学习项目开发所得
1.我要在某个位置新增一条指令,但是可能没有选择好的原因,这条指令被添加到指令的最后面了,我的指令行数有几十行,然后我就要把这条指令拖动到上一屏我指定的位置上,但当我拖动指令到了当前屏最上方时,发现编 ...
- 什么是Redis持久化?
Redis持久化指的是将内存中的数据同步到硬盘文件,并在redis重新启动的时候将数据备份到硬盘上,从而保证数据的安全性.通过持久化, Redis可以在系统关闭时将数据保存到硬盘上,避免了数据丢失的风 ...
- SQL之基本查询
提纲 记录查询 使用列别名 查询语句执行顺序 数据分页 子句执行顺序 结果集排序 PS: 排序注意 多个排序字段 子句执行顺序 结果集去除重复数据 注意: 条件查询 比较运算符 注意 子句执行顺序
- 使用 Docker 部署 Answer 问答平台
1)介绍 GitHub:https://github.com/apache/incubator-answer Answer 问答社区是在线平台,让用户提出问题并获得回答.用户可以发布问题并得到其他用户 ...
- STM32 LwIP学习过程问题总结(一):LwIP ping不通,抓包发现ICMP校验和为0x0000
一.问题 今天在将之前的STM32 LwIP1.4.1版本程序移植到2.1.2版本上时,发现ping不同,但是开发板有ICMP回复包,黄颜色警告checksum为0x0000.说明LwIP移植应该是没 ...
- vscode 切换页签快捷键 自定义 Ctrl+H Ctrl+L 左右切换
今天需要整理写资料,需要在多个页签之间切换,发现自定义了快捷. 好久不用这个快捷键,都快忘了. vscode 切换页签快捷键 自定义 Ctrl+H Ctrl+L 左右切换
- 摆脱鼠标系列 - vscode - 页内 Ctrl + F 搜索完 回车下一个,选到后按 Esc退回到编辑状态
为什么 这个很基础,但是没有细细整理 摆脱鼠标系列 - vscode - 页内 Ctrl + F 搜索完 回车下一个,选到后按 Esc退回到编辑状态 之前还找了个快捷键 Alt + Enter,发现冲 ...
- 手撕fft算法--fft原理和源码解析
一 前言 在音频信号处理中,fft变换是一个无法绕过过去的存在.借着一次算法出来的机会,把fft熟悉一下不为过啊. 二 问题 这里,其实是由一个问题驱动的,那就是:怎么通过fft的变化来得 ...
- electron 中如何安装或更新 vuejs-devtool 最新稳定版
手上正在开发的项目是vue3.0 通过添加 vue-cli-plugin-electron-builder 插件生成 electron 项目,项目在开发过程中发现 beta版的 vuejs-devto ...