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中由用户定义的变量. 环境变量:这 ...
随机推荐
- 自然周算法-javascript实现
获取自然周 js获取自然周 本文作者:bigroc 本文链接:https://www.cnblogs.com/bigroc/p/14888550.html 代码 function getWeeks() ...
- C# 操作国产数据库之【 人大金仓 】之四大模式
人大金仓优点 人大金仓是国产最主流ORM之一 具有和PgSql一样强悍的性能,同时人大金仓支持了四种数据库模式 : Oracle.PgSql.MySql和SqlServer ,假如你们系统有多种数据库 ...
- Java 线程安全问题 使用同步机制讲单例模式中的懒汉式改写为线程安全的
1 package bytezero.deadlock; 2 3 /** 4 * 使用同步机制讲单例模式中的懒汉式改写为线程安全的 5 * 6 * 7 * 8 * 9 * @author Byteze ...
- BeanShell 如何加密加签?
一 首先我们要搞清楚接口签名步骤: **第一步:初步实现接口****第二步:找开发拿到算法和key** * key:sAHDRNJg0ZevmEn7HwBfbw== * 算法:HmacMD5 咱们就找 ...
- 4、zookeeper的事件监听机制
watcher概念 https://zookeeper.apache.org/doc/r3.4.14/zookeeperProgrammers.html#sc_WatchRememberThese z ...
- 一个简易的ORM框架的实现(一)
一个简易的ORM框架的实现 ORM ORM---操作数据库---对象关系映射 ORM(Object Relational Mapping)框架采用元数据来描述对象与关系映射的细节.只要提供了持久化类与 ...
- 寒武纪加速平台(MLU200系列) 摸鱼指南(三)--- 模型移植-分割网络实例
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明 本文作为本人csdn blog的主站的备份.(Bl ...
- js实现展开多级数组
1.递归 function steamrollArray(arr) { let res = [] for (const a of arr) { if(a instanceof Array){ res ...
- CloudXR技术如何运用于农业?
随着科技的不断发展和应用的深入,农业领域也在逐渐引入新技术来优化生产效率和成本.改进管理和监控等.云化XR(CloudXR)作为一种融合了云计算.虚拟现实(VR)和增强现实(AR)等技术的解决方案,也 ...
- 说说你对keep-alive的理解是什么?
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 一.Keep-alive 是什么 keep-alive是vue中的内置组件,能在组件切换过程中将状态保留在内存中,防止重复渲染DOM ke ...