尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

C语言:变量,运算符,基础IO

C语言:变量,运算符,基础IO
📅 发布时间:2026/7/23 6:03:59

C语言基础

1 变量

程序运行期间值允许改变。变量会在内存分配存储空间,通过变量名访问,先定义,后使用。

1.1 变量命名约束

  1. 组成字符仅限字母、数字、下划线,首字符不能为数字。
  2. 禁止和C语言关键字重名。
  3. 尽量不与标准库函数冲突。
  4. 命名推荐见名知意,可选驼峰命名或下划线命名。

1.2 基础数据类型

整型:short、unsigned short、int、unsigned int、long、unsigned long
浮点型:float、double
字符型:char、unsigned char
布尔型:bool,依赖头文件 <stdbool.h>

1.3 初始化与赋值

初始化:定义变量时直接赋予初始值。
赋值:变量定义完成后,通过 = 修改存储内容。
局部变量未初始化时内存为随机值,禁止直接参与运算。

2 表达式与类型转换

表达式由运算符、常量、变量组合构成,任意表达式具备数据类型与运算结果。

2.1 隐式类型转换

混合运算时自动转换,转换方向:低精度向高精度提升。
转换层级参考:char/short → int → long → unsigned → float → double
规则:

  1. char、short参与运算,强制提升为int;
  2. float参与运算,强制提升为double。

2.2 强制类型转换

语法格式: (目标类型)变量 / (目标类型)(表达式)

3 运算符

3.1 算术运算符

      • / % ++ –
  1. % 取模运算符仅支持整型,浮点数据不可使用;
  2. ++ 、 – 只能作用于变量;
  3. i++ :先取值,后自增; ++i :先自增,后取值。

3.2 赋值运算符

= += -= *= /= %=
左值:能够放置在等号左侧,只有变量满足条件。
右值:变量、常量、合法表达式均可。

跨类型赋值规则:

  1. 浮点数据赋值给整型,直接舍弃小数部分;
  2. 大数据存入低位宽类型,直接截断二进制低位,结果不可预判。

3.3 逗号运算符

语法: (表达式1,表达式2,表达式3)
运算顺序从左至右依次执行,整体结果等于最右侧表达式的值。

3.4 sizeof运算符

获取变量或数据类型占用内存字节大小。

c

int a;
sizeof(int);
sizeof(a);

3.5 优先级大致顺序

括号 > 单目运算符 > 双目运算符 > 三目运算符 > 赋值运算符 > 逗号运算符

4 基础输入输出函数

头文件: <stdio.h>

  1. 单字符IO函数

putchar()

功能:向终端输出单个字符。

c

putchar(表达式);

规则:

  1. 仅支持输出单个字符;
  2. 参数会解析为ASCII码对应字符;
  3. 返回值:输出字符的ASCII码(int类型)。

示例:连续输出hello

c

#include <stdio.h>
int main(void)
{
putchar(‘h’);
putchar(‘e’);
putchar(‘l’);
putchar(‘l’);
putchar(‘o’);
putchar(‘\n’);
return 0;
}

getchar()

功能:从终端读取一个字符。

c

char ch;
ch = getchar();

  1. 格式化IO函数
  • printf() :格式化数据输出到终端
  • scanf() :从终端格式化读取数据
  1. 字符串IO函数
  • gets() :读取字符串,存在缓冲区溢出漏洞,标准C已经废弃,禁止使用。
  • puts() :输出字符串,自动追加换行符。

补充区分

  1. putchar / getchar :面向单个字符;
  2. printf / scanf :支持多种数据类型格式化读写;
  3. puts / gets :专门操作字符串。

相关新闻

  • 帝舵常州网点地址及售后服务热线最新公示(2026年7月版) - 帝舵中国官方服务中心
  • 【AI副业变现黄金公式】:3个私域流量裂变模型+7天启动SOP,92%新手已验证有效
  • TypeScript超越Python:AI时代静态类型语言的优势

最新新闻

  • 亨得利腕表维修保养专业售后团队服务流程权威公示(2026年7月最新) - 亨得利官方
  • 海牙认证要多少钱?海牙认证办理周期?
  • 企业大脑到底是什么?别再把它和知识库混为一谈
  • C++容器实战指南:从vector到unordered_map,性能优化与避坑
  • C++交互式图形库开发:从场景图到性能优化的实战指南
  • Oracle RAC 26ai双节点部署实战:从环境准备到高可用验证

日新闻

  • 亨得利盐城维修点在哪里?手表维修保养地址指南**公示(2026年7月最新) - 亨得利官方
  • 提升.NET API安全性:Boxed.AspNetCore.Swagger认证授权最佳实践
  • 帝舵佛山**网点地址更新:2026年7月售后热线电话与服务客户指南 - 帝舵中国官方服务中心

周新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号