C语言——基础框架、变量、运算符

基础框架:

#include<stdio.h>    //编译预处理指令int main()           //程序的入口主函数main
{                    //程序(函数、功能)结束标志return 0;          //程序退出前返回给调用者(操作系统)的值
}                    //程序(函数、功能)结束标志

变量:

强调的是变化,程序运行过程中其值会变化

四个特征:变量名、变量值、存储单元、变量类型;先定义再使用。

(1)变量名/标识符:

由字母数字下划线组成,且只能以下划线或者字母开头,不能以数字开头,区分大小写。

命名方法:顾名思义,使用英语命名。驼峰命名法,int secondPreYear。函数名常用下划线衔接。

(2)变量类型:

 简单来记,操作系统(Windows、Linux)中整型数就是整数(4个字节=32位)、浮点类型就是小数(float:4个字节=32位)、字符型就是ASCII码(char:1个字节=8bit)(可以用整数来表示)

注:32位就是2的32次方

在单片机中,整型数为2个字节=16位,即其最大可表示的数为2的16次方即65536

运算符:

C语言中的运算符非常丰富,大致可以分为以下几类:

  1. 算术运算符:用于执行基本的数学运算。
    • + 加法
    • - 减法
    • * 乘法
    • / 除法
    • % 求余(模)
    • ++ 自增
    • -- 自减
  2. 关系运算符:用于比较两个值。
    • == 等于
    • != 不等于
    • > 大于
    • < 小于
    • >= 大于等于
    • <= 小于等于
  3. 逻辑运算符:用于执行逻辑运算。
    • && 逻辑与
    • || 逻辑或
    • ! 逻辑非
  4. 位运算符:用于对整数的二进制位进行操作。
    • & 按位与
    • | 按位或
    • ^ 按位异或
    • ~ 按位取反
    • << 左移
    • >> 右移
  5. 赋值运算符:用于赋值。
    • = 赋值
    • += 累加赋值
    • -= 累减赋值
    • *= 累乘赋值
    • /= 累除赋值
    • %= 求余赋值
    • <<= 左移赋值
    • >>= 右移赋值
    • &= 按位与赋值
    • |= 按位或赋值
    • ^= 按位异或赋值
  6. 条件运算符(也称为三元运算符):
    • ? : 条件运算符,例如 a > b ? a : b 表示如果 a > b 成立,则结果为 a,否则为 b
  7. 逗号运算符
    • , 逗号运算符,用于顺序执行多个表达式,但整个表达式的结果是最后一个表达式的结果。
  8. sizeof 运算符
    • sizeof 运算符用于获取数据类型或变量在内存中所占的字节数。
  9. 类型转换运算符
    • (type) 强制类型转换运算符,用于将表达式的值转换为指定的类型。
  10. 下标运算符 和 结构体/联合体成员访问运算符
    • [] 下标运算符,用于数组索引和访问指针指向的元素的偏移量。
    • . 结构体或联合体的成员访问运算符。
    • -> 通过指针访问结构体或联合体的成员。
  11. 指针运算符
    • & 取地址运算符。
    • * 指针解引用运算符(同时也是乘法运算符,但上下文会决定其意义)。

这些运算符在C语言中扮演着非常重要的角色,是构建各种复杂表达式和语句的基础。

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

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

相关文章

不同型号的GD32 MCU如何区分?

大家是否碰到过以下应用场景&#xff1a;同一套软件代码希望跑在不同型号的GD32 MCU中&#xff0c;但有些地方需要根据MCU型号进行调整&#xff1f;或者上位机或其他MCU与GD32 MCU通信时需要知道对应的MCU型号是哪个&#xff1f; 此时&#xff0c;我们就需要了解如何获取以及区…

JANDEL探针四探头RM3-AR英国健德尔四探针手测

JANDEL探针四探头RM3-AR英国健德尔四探针手测

LabVIEW远程实验数据采集系统

随着科学研究的不断发展&#xff0c;实验室对远程数据采集和监控的需求越来越高。传统的数据采集方式往往需要实验人员亲临现场&#xff0c;费时费力&#xff0c;且数据实时性较差。为了解决这些问题&#xff0c;基于LabVIEW开发了一套远程实验数据采集系统&#xff0c;实现对实…

ArcGIS识别不GDB文件地理数据库显示为空?

​ 点击下方全系列课程学习 点击学习—>ArcGIS全系列实战视频教程——9个单一课程组合系列直播回放 点击学习——>遥感影像综合处理4大遥感软件ArcGISENVIErdaseCognition 我们经常会碰到拷贝的GDB文件ArcGIS无法识别&#xff0c;软件只是把他当做普通的文件夹去看待&am…

【目录】全博文、专栏大纲

首先要和大家说一下&#xff0c;博主的文章并不是想到哪里写到哪里&#xff0c;而是以整个大后端为主题&#xff0c;成体系的在写专栏&#xff0c;从和后端紧相关的计算机核心课程开始、到JAVA SE、JAVA EE、到数据库、MQ等各类中间件、再到业务场景、性能优化。当然也会涉及一…

Java小白入门到实战应用教程-开发环境搭建-JDK安装详细教程

Java小白入门到实战应用教程-JDK安装详细教程 writer:eleven 开发环境搭建 上节内容补充 在带领大家搭建开发环境前&#xff0c;先来了解一些java领域的名词。 Java根据应用领域区别可分为三个版本&#xff1a; JavaSE&#xff1a;是Java的标准版&#xff0c;提供了Java的…

【Windows】XMedia Recode(免费的专业视频格式转换软件)及同类型软件介绍

今天给大家介绍的这款软件叫XMedia Recode&#xff0c;这是一款免费的专业视频格式转换软件。有需要的朋友可以了解一下哦。 软件介绍 XMedia Recode 是一款功能强大的免费视频转换和音频转换软件&#xff0c;它支持多种格式的视频和音频文件转换&#xff0c;以及简单的编辑…

GlobalSign证书介绍以及申请流程

在当今高度互联的世界中&#xff0c;网络安全与数据保护的重要性日益凸显&#xff0c;而数字证书作为保障网络通信安全的关键技术&#xff0c;已成为构建数字信任的基石。GlobalSign&#xff0c;作为全球数字证书行业的先驱和领导者&#xff0c;自成立以来便致力于为全球企业和…

【卡尔曼滤波器】DR_CAN :1_递归算法_做估计 学习笔记

DR_CAN : 1_递归算法_Recursive Processing 学习笔记 DR_CAN 大神卡尔曼滤波算法(转自BiliBili DR_CAN 全网最好的卡尔曼滤波器视频教程,笔记截图)B站视频地址卡尔曼滤波原理1_递归算法_Recursive Processing 取平均 做估计 前k-1次的平均值

无线速度传感器

对高中物理实验中的速度测量方法进行改进&#xff0c;利用安装在小车上的无线光电门来测量小车运动过程中的速度&#xff0c;即满足了精度的要求&#xff0c;又可以研究物体的运动过程。无线光电门和数据接收器间采用蓝牙无线传输的方式&#xff0c;电脑端的软件使用Flash来制作…

LT8644EX 国产芯片 低功耗 数字交叉点开关 用于光纤网络交换 数字视频 数据存储网络

2.一般说明 LT8644EX是一个16x16数字交叉点交换机:具有16个差分CML兼容输入端和16个差动CML输出端。该LT8644EX是优化非归零(NRZ)与高达每端口6 Gbps的数据速率信令。每个端口提供可编程水平的输入均衡和可编程输出摆幅。tell 18171547226,该LT8644EX支持通过串行控制接口的独立…

信息安全等级保护测评

等保测评&#xff0c;即信息安全等级保护测评&#xff0c;是指对信息系统按照国家标准要求进行安全评估和等级划分的过程。以下是关于等保测评的详细解析&#xff1a; 一、等保测评的定义与目的 等保测评旨在评估信息系统的安全性&#xff0c;并根据评估结果给予相应的安全等级…

前端返回pdf时不显示内容,如何解决?

&#x1f3c6;本文收录于《CSDN问答解答》专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收藏&…

Idea合并Git分支信息

#git 的笔记 ##本篇文章是通过Idea 实现git 命令操作的代码的上传与合并。 1.合并分支 点击 Git 选择Merge 这里选择合并远程的分支

简介Docker以及K8s

什么是Docker Docker 属于 Linux 容器的一种封装&#xff0c;提供简单易用的容器使用接口以及操作系统级别的虚拟化。 更为直白的叙述就是&#xff0c;Docker可以将程序和环境&#xff08;依赖库配置操作系统&#xff09;打包并运行的工具软件。 基础镜像 总所周知&#xf…

鸿蒙语言基础类库:【@ohos.worker (启动一个Worker)】

启动一个Worker 说明&#xff1a; 本模块首批接口从API version 7开始支持。后续版本的新增接口&#xff0c;采用上角标单独标记接口的起始版本。开发前请熟悉鸿蒙开发指导文档&#xff1a;gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。 Work…

“闭门造车”之多模态思路浅谈:自回归学习与生成

©PaperWeekly 原创 作者 | 苏剑林 单位 | 科学空间 研究方向 | NLP、神经网络 这篇文章我们继续来闭门造车&#xff0c;分享一下笔者最近对多模态学习的一些新理解。 在前文《“闭门造车”之多模态思路浅谈&#xff1a;无损》中&#xff0c;我们强调了无损输入对于理想的…

出现 failed to remove xxxx: Invalid argument 解决方法

目录 前言1. 问题所示2. 原理分析3. 解决方法 前言 这好像是一个Git的一个Bug&#xff0c;对应有个下下策的解决方式 1. 问题所示 Git提交的时候出现如下问题 Git warning:failed to remove debug.log:invalid argumentgit clean -f -1 --F&#xff1a;\xxx failed to rem…

科技与水利的完美融合:从数据采集到智能决策,全面解析智慧水利解决方案如何助力水利行业实现智能化管理

本文关键词&#xff1a;智慧水利、智慧水利工程、智慧水利发展前景、智慧水利技术、智慧水利信息化系统、智慧水利解决方案、数字水利和智慧水利、数字水利工程、数字水利建设、数字水利概念、人水和协、智慧水库、智慧水库管理平台、智慧水库建设方案、智慧水库解决方案、智慧…

代码随想录算法训练营Day36||动态规划part04

494.目标和&#xff1a;本题的方法主要用来解决------装满容量为x的背包&#xff0c;有几种方法。 可以先理解二维数组的思路&#xff1a;感觉b站一个评论写得很清晰&#xff0c;借用一下。 这题最难理解的地方在于如何初始化数组&#xff0c;为什么dp[0]1&#xff1b;我试图自…