C语言从头学02——基本语法概念

这篇文章介绍几个编写C语言程序需要掌握的基本语法概念:
  一、语句
       C语言代码的组成单位是语句(statement),语句是构成程序的基本单位。C语言规定,语句必须使用分号结尾。但有例外,例如,预处理指令#include<stdio.h>结尾就没有";"。
      举例:int a=0; //声明一个命名为 a 的整形变量并赋初值
      一般一个语句占一行,也可以一行写几个语句;还可以一个语句分成几行写都可以。一个语句分成多行时是有要求的,不能将一个命令名、函数名强行段成两行。一个字符串如果太长必须断成两行时,可在断开处用"\"连接。
  二、表达式
      C语言中的表达式是一个用来获取值的计算式,因此表达式都有返回值。例如1+2或者x+y都
  是表达式。表达式可以是语句的组成部分,但表达式不构成一个语句。
 三、语句块
      多个语句用一对"{......}"括起来组成一个块,称为语句块。语句块可以视为一个复合语句,因此语句块执行时会一起依次执行,如此对于提高代码的逻辑性及可读性意义重大。语句块后边无需加";"号,加了也不报错(因为";"构成一个空语句)。
  四、空格
       空格的作用是编译器用来区分不同语法单位的。如果语法单位不用空格就能区分,空格也可以不加;加了是为了增加代码的可读性,阅读起来方便。例如:语句 int a=1;与语句int a = 1;完全等价,int与a之间的空格是必须的,没有空格机器不能确定语句是声明int型变量a还是有一个变量就叫inta;但"a"与"="之间、"="与"1"之间的空格可有可无的。
       空格还用来表示缩进,是代码看起来逻辑更清楚。实际空格的多少对于编译器来说无所谓,但对于我们人看起来有无空格有很大不同。
     还是举个例子:

	 for(int i=0;i<100;i++){int a=i;printf("%d",a);}int x=100;

       由于for循环内的语句有缩进,因此循环内外的语句一眼就能区分开来,比齐头并进的书写方式可读性好很多。
 五、注释
       注释是对代码的说明,编译器会完全忽视注释的存在,但对我们看懂代码有重要作用。C语言注释有两种方式:
       一是"/ * 注释内容 * /"形式。这种注释的位置可以单独占一行或几行,注释内容可以分行写;也可以插在一行内任意地方,但不能插在函数名等关键字中间。
       二是"//注释内容"。这种注释形式只能放到一条语句的最后或者单独占一行也可以,作用仅限在一行内。
  还是举例子说明:

    int / *声明整形类型变量* / x=1; / *注释的作用是很大的* /int y=2; //声明整形变量y并赋值2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/7047.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【第9章】spring-mvc响应结果处理

文章目录 前言一、准备1. JSP2. User 二、基础案例1.设置属性2.model3. map4.modelMap5. modelAndView 三、扩展案例1. header2. cookie3.session4. json5. object 总结 前言 这一章描述SpringMvc对于响应各种各样的处理以及其中遇到的问题。 一、准备 1. JSP <%--Create…

模拟电路设计与分析——电流

&#x1f3ac; 秋野酱&#xff1a;《个人主页》 &#x1f525; 个人专栏:《Java专栏》《Python专栏》 ⛺️心若有所向往,何惧道阻且长 文章目录 原子电流的产生电流的单位电流的方向直流电交流电直流&交流对比开路&闭路 原子 世界万物都是由原子构成&#xff0c;那么…

跨领域精英汇聚,驱动ATFX加速迈向行业巅峰

人才是企业发展的第一资源&#xff0c;企业间的竞争归根结底是人才的竞争。若想实现高质量发展目标&#xff0c;需要高端复合型人才队伍作支撑。面对日益激烈的市场竞争&#xff0c;作为行业头牌品牌&#xff0c;ATFX展现其强大的品牌魅力与前瞻战略布局&#xff0c;近半年来在…

python Flask路由系统如何影响应用性能的一些关键点

Flask的路由系统对应用性能的影响主要体现在路由匹配和分发请求的效率上。以下是关于Flask路由系统如何影响应用性能的一些关键点&#xff1a; 路由匹配方式&#xff1a;Flask支持精准匹配和模糊匹配两种方式。精准匹配是指URL中的路径和定义的路由规则完全匹配&#xff0c;而…

深入理解回溯算法

大家好&#xff0c;我是 方圆&#xff0c;本篇我们来讲回溯。回溯相当于穷举搜索&#xff0c;它会尝试各种可能的情况直到找到一个满足约束条件的解&#xff0c;寻找解的手段一般通过 DFS 实现&#xff0c;是一个 增量构造答案 的过程。回溯法适用于解决能够将原问题拆分成子问…

【linuxC语言】守护进程

文章目录 前言一、守护进程的介绍二、开启守护进程总结 前言 在Linux系统中&#xff0c;守护进程是在后台运行的进程&#xff0c;通常以服务的形式提供某种功能&#xff0c;如网络服务、系统监控等。守护进程的特点是在启动时脱离终端并且在后台运行&#xff0c;它们通常不与用…

【Linux】冯·诺依曼体系结构

要想谈进程&#xff0c;我们就不能只谈进程&#xff0c;我们如果想搞清楚什么是进程&#xff0c;就要从操作系统讲起。我们现在的不管是Linux或是Windows或是安卓等操作系统&#xff0c;它们都有一个相同点&#xff0c;那就是遵循冯诺依曼体系结构&#xff0c;我们看一下冯诺依…

多用户商城系统思维导图

多用户商城系统思维导图之退换货商品计算情况&#xff1a; 这是多用户商城系统思维导图的子图&#xff0c;总图可参考&#xff1a;

C语言知识点补充——操作符详解

1、计算幂次数和平方根 使用<math.h>数学库 pow()函数计算幂次数&#xff1b;sqrt()函数计算平方根。 注&#xff1a;sqrt()输入同样的数字&#xff0c;计算出来的数值&#xff0c;可能不相等&#xff0c;因为输出double数&#xff0c;小数点后面的数值不一定一致。 2…

mysql数据库(排序与分页)

目录 一. 排序数据 1.1 排序规则 1.2 单列排序 1.我们也可以使用列的别名&#xff0c;给别名进行排序 2.列的别名只能在 ODER BY 中使用&#xff0c; 不能在WHERE中使用。 3.强调格式&#xff1a;WHERE 需要在 FROM 后&#xff0c; ORDER BY 之前 1.3 二级排序&…

【考研数学】武忠祥「基础篇」如何衔接进入强化?

如果基础篇已经做完&#xff0c;并且讲义上的例题也都做完了&#xff0c; 那下一步就是该做题了 这个时候&#xff0c;不能盲目做题&#xff0c;做什么题很重要&#xff01;我当初考研之前&#xff0c;基础也很差&#xff0c;所以考研的时候选了错误的题集&#xff0c;做起来就…

1078 字符串压缩与解压

solution 输入的字符串含空格&#xff0c;可以先吸收换行符再用getline()解压时&#xff0c;字符数可能不止是各位数字&#xff0c;存在多位数的情况压缩时&#xff0c;别漏了最后一组字符 #include<iostream> #include<string> using namespace std; int main()…

llama.cpp制作GGUF文件

llama.cpp的介绍 llama.cpp是一个开源项目&#xff0c;由Georgi Gerganov开发&#xff0c;旨在提供一个高性能的推理工具&#xff0c;专为在各种硬件平台上运行大型语言模型&#xff08;LLMs&#xff09;而设计。这个项目的重点在于优化推理过程中的性能问题&#xff0c;特别是…

java设计模式六 访问者

访问者模式&#xff08;Visitor Pattern&#xff09;是一种设计模式&#xff0c;它允许你将算法附加到对象结构中的各个元素上&#xff0c;而不必修改对象结构本身。它主要用于处理对象结构非常稳定&#xff0c;但频繁需要在此结构上执行不同操作的场景。访问者模式通过将操作移…

SpringBoot自动连接数据库的解决方案

在一次学习设计模式的时候&#xff0c;沿用一个旧的boot项目&#xff0c;想着简单&#xff0c;就把数据库给关掉了&#xff0c;结果报错 Consider the following: If you want an embedded database (H2, HSQL or Derby), please put it on the classpath. 没有数据库的需…

一款开源的原神工具箱,专为现代化 Windows 平台设计,旨在改善桌面端玩家的游戏体验

Snap.Hutao 胡桃工具箱是一款以 MIT 协议开源的原神工具箱&#xff0c;专为现代化 Windows 平台设计&#xff0c;旨在改善桌面端玩家的游戏体验。通过将既有的官方资源与开发团队设计的全新功能相结合&#xff0c;提供了一套完整且实用的工具集&#xff0c;且无需依赖任何移动设…

ICode国际青少年编程竞赛- Python-1级训练场-变量入门

ICode国际青少年编程竞赛- Python-1级训练场-变量入门 1、 a 4 Dev.turnRight() Dev.step(a)2、 a 4 Spaceship.step(a) Dev.step(a)3、 a 4 Dev.step(a) Dev.turnLeft() Dev.step(a)4、 a 5 Dev.step(a) Spaceship.step(a) Dev.step(a)5、 a 3 Dev.step(a) Dev.tur…

查看编译库的使用的gcc版本

strings libtlsdk.a | grep GCC这个命令是用来查看静态库&#xff08;在这里是libtlsdk.a&#xff09;中包含的字符串&#xff0c;并从中筛选出包含GCC的行。 具体来说&#xff1a; strings命令用于从二进制文件中提取出可打印的字符串。在这个命令中&#xff0c;它被用来从l…

【如此简单!数据库入门系列】之存储设备简介

文章目录 1 前言2 存储设备分类3 主存层次结构4 磁盘结构5 RAID6 总结7 系列文章 1 前言 没有存储&#xff0c;就没有数据&#xff01; 如果说ER模型和数据库规范化是数据库概念模式的技术和方法&#xff0c;那么存储设备就是数据库物理模式的基础。 物理存储设备包含哪些类型…

风扇开启执行逻辑

执行流程 public static void businessExecutionWork(){//以下为业务逻辑部分System.out.println("1、根据电池包控制风扇服务执行 开始!");//1、获取电池包电压、电流、环境温度//获取电池包电压、电流、环境温度ObtainBatteryDataService obtainBatteryDataServic…