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

2024-05-06 20:28

本文主要是介绍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

这篇关于C语言从头学02——基本语法概念的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/965295

相关文章

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

Go语言中三种容器类型的数据结构详解

《Go语言中三种容器类型的数据结构详解》在Go语言中,有三种主要的容器类型用于存储和操作集合数据:本文主要介绍三者的使用与区别,感兴趣的小伙伴可以跟随小编一起学习一下... 目录基本概念1. 数组(Array)2. 切片(Slice)3. 映射(Map)对比总结注意事项基本概念在 Go 语言中,有三种主要

MyBatis-Flex BaseMapper的接口基本用法小结

《MyBatis-FlexBaseMapper的接口基本用法小结》本文主要介绍了MyBatis-FlexBaseMapper的接口基本用法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具... 目录MyBATis-Flex简单介绍特性基础方法INSERT① insert② insertSelec

JAVA调用Deepseek的api完成基本对话简单代码示例

《JAVA调用Deepseek的api完成基本对话简单代码示例》:本文主要介绍JAVA调用Deepseek的api完成基本对话的相关资料,文中详细讲解了如何获取DeepSeekAPI密钥、添加H... 获取API密钥首先,从DeepSeek平台获取API密钥,用于身份验证。添加HTTP客户端依赖使用Jav

C语言中自动与强制转换全解析

《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

Go语言利用泛型封装常见的Map操作

《Go语言利用泛型封装常见的Map操作》Go语言在1.18版本中引入了泛型,这是Go语言发展的一个重要里程碑,它极大地增强了语言的表达能力和灵活性,本文将通过泛型实现封装常见的Map操作,感... 目录什么是泛型泛型解决了什么问题Go泛型基于泛型的常见Map操作代码合集总结什么是泛型泛型是一种编程范式,允

Android kotlin语言实现删除文件的解决方案

《Androidkotlin语言实现删除文件的解决方案》:本文主要介绍Androidkotlin语言实现删除文件的解决方案,在项目开发过程中,尤其是需要跨平台协作的项目,那么删除用户指定的文件的... 目录一、前言二、适用环境三、模板内容1.权限申请2.Activity中的模板一、前言在项目开发过程中,尤

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

C++中使用vector存储并遍历数据的基本步骤

《C++中使用vector存储并遍历数据的基本步骤》C++标准模板库(STL)提供了多种容器类型,包括顺序容器、关联容器、无序关联容器和容器适配器,每种容器都有其特定的用途和特性,:本文主要介绍C... 目录(1)容器及简要描述‌php顺序容器‌‌关联容器‌‌无序关联容器‌(基于哈希表):‌容器适配器‌:(

基于Go语言实现一个压测工具

《基于Go语言实现一个压测工具》这篇文章主要为大家详细介绍了基于Go语言实现一个简单的压测工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录整体架构通用数据处理模块Http请求响应数据处理Curl参数解析处理客户端模块Http客户端处理Grpc客户端处理Websocket客户端