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中由用户定义的变量. 环境变量:这 ...
随机推荐
- 基于kubeadm部署k8s1.80.0
k8s搭建 硬件要求 测试环境 # master 2核 4G 20G # node 4核 8G 40G 生产环境 # master 8核 16G 100G # node 16核 64G 500G 方式 ...
- ASP.NET XML序列化
整理一下ASP.NET里面如何序列化实体为XML,获取解析XML内容为实体. 第一步要添加程序集引用,项目-->引用-->鼠标右键-->添加引用-->选择程序集-->Sy ...
- 【Azure K8S | AKS】在中国区AKS上遇见ImagePullBackOff时的替代方案
问题描述 在AKS集群中部署calico时候,遇见 ImagePullBackOff 问题. 在创建POD calico-typha-horizontal-autoscale 时候遇见拉取镜像失败问题 ...
- 【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?
问题描述 使用6379端口连接Azure Redis服务,连接失败.因为默认情况下Azure Redis的设置没有打开6379的端口.需要使用SSL(6380端口)进行连接,但是遇见了无法连接的问题. ...
- 【Azure 事件中心】China Azure上是否有Kafka服务简答
问题描述 China Azure 上是否有Kakfa服务可以使用呢? 问题回答 China Azure并没有专门的Kafka服务,但是可以使用Azure Event Hub. 创建标准版及以上的Eve ...
- SpringCloud Nacos
1.Nacos简介 SpringCloud Alibaba 由来: 因为原先Spring Cloud 的许多组件都是对Netflix 公司的各种框架进行封装, 然后因为Netflix公司对后续更新的各 ...
- Android 大致可以分为四层架构
Android 系统架构 为了让你能够更好地理解 Android 系统是怎么工作的,我们先来看一下它的系统架构. Android 大致可以分为四层架构:Linux 内核层.系统运行库层.应用框架层和应 ...
- Java 如何自定义异常类
1 package com.bytezero.throwable; 2 3 /** 4 * 5 * @Description 如何自定义异常类 6 * @author Bytezero·zhengle ...
- SQLServer 导入 Excel 表数据报错“文本被截断。。。”
报错详情(关键信息就是:文本被截断) 错误 0xc020901c: 数据流任务 1: 输出"Excel 源输出"(9) 上的 输出列"xxxxx"(78) 出错 ...
- C++左值右值完美转发转移
左值(Lvalue)与右值(Rvalue) 英文含义: 左值(Lvalue):Locator value,意味着它指向一个具体的内存位置. 右值(Rvalue):Read value,指的是可以读取的 ...