【c语言基础】C语言常见概念
目录一、第一个c语言程序二、关键字的介绍三、字符和ASCII编码四、字符串和\0五、转义字符六、语句和语句分类6.1 空语句6.2 表达式语句6.3 函数调用语句6.4 复合语句6.5 控制语句七、注释7.1 /**/ 的注释方式7. 2 // 的注释方式一、第一个c语言程序#includestdio.h //这个是头文件 int main() //主函数 { printf(hello C\n); return 0 ; //退出当前函数带回返回值 }1、#includestdio.h#include预处理指令作用把后面文件里的代码 “导入” 到当前程序。stdio.h标准输入输出头文件stdio standard input output2、int main()main主函数C语言程序唯一入口。程序运行时系统自动从main开始执行。int 代表这个函数返回整数类型然后一个程序只能有一个main函数不然会报错。3、{ }大括号函数体边界 所有属于main函数内部的代码全部写在一对大括号里4、printf(hello C\n);printf():打印函数向控制台打印文字“hello C\n”字符串常量\n是转义字符表示换行5、return 0 return 退出当前函数带回返回值。0返回的是整数也就是程序正常跑完没有错非0程序运行发生异常因为前面int main要求main必须返回整数。主包我使用的是VS2026在VS2026中运行代码的快捷键是ctrlF5二、关键字的介绍auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while对于关键字的话我们自己在创建标识符的时候是不能和关键字重复的然后这些关键字也不是自己能创建的。是官方给好的的注https://zh.cppreference.com/w/c/keywordC语⾔关键字的全部介绍。三、字符和ASCII编码像我们在键盘上敲出来的字符如ab等等都叫做字符然后c语言中字符是用单引号括起来的如‘a’‘b’‘’。然后我们知道计算机中所有的数据都是以二进制的形式存储的。后来为了标准化将这些字符变成了ASCII编码c语言就是使用ASCII编码。这个出自https://zh.cppreference.com/w/cpp/language/ascii字符A~Z的ASCII码值从65~90字符a~z的ASCII码值从97~122大小写字符的ASCII码的差值为32数字字符0~9的ASCII码值是从48~57然后0~31这32个字符是不可打印字符#includestdio.h int main() { printf(%c\n,Q); printf(%c\n,81); return 0 ; }其中输出的‘Q’和81的结果都是相同的如下图所示。其中81是十进制的因为在C语言中默认就是使用十进制如果你还想使用八进制或者十六进制打印对应的“Q”的话比如这张图你就不能直接输入121或者51会默认为十进制的121或51而应该在八进制前面加上0如“0121”在十六进制前面加上0x如“0x51”。如下图所示。当然还可以使用字符串内部转义写法在前面加上\,如\121或‘\x51’,如下图所示。四、字符串和\0在c语言中字符串要用双引号括起来的如“Hello world”就是一个字符串前面提到的‘’单引号是字符常量只能表示单个字符如\x51像‘AB’它就会报错。其中%s是字符串占位符来接收“hello world”的。然后在C语言字符串中有一个特殊的知识就是在字符串的末尾隐藏着一个“ \0 ”,这个“ \0 ”字符是字符串的结束标志。char是字符类型str[]是字符数组。如图所示在末尾结束符 \0我这个调试界面需要在我代码第六行的那个位置打个断点按ctrlF10然后再顶部菜单“调试-窗口-监视-监视1”在监视窗口输入变量名就可以了。如图所示 char arr1[] {a,b,c}数组大小只有3个字符末尾没有自动添加 \0就会导致乱码而 char arr2[] abc 只要你用双引号包裹文字去初始化字符数组 / 字符指针c语言编译器会自动在最后偷偷塞一个\0就正常打印。在其后面加上‘\0’就能正常打印了所以 \0 很重要因为printf(%s)、strlen、strcpy这类字符串函数全部依靠\0当作终止标记。如果没有这个标记函数会继续往数组外面乱读内存产生乱码。五、转义字符在前文中就提到了\n是转义字符它是换行的意思。转义字符就是转变原来意思的字符如下图一些常用的转义字符。转义字符参考https://zh.cppreference.com/w/c/language/escape六、语句和语句分类c语言的代码是由一条一条的语句构成的c语言中的语句分为五类1、空语句2、表达式语句3、函数调用语句4、复合语句5、控制语句6.1 空语句空语句就是一个分号一条语句。#include stdio.h int main() { ;//空语句 return 0 ; }6.2 表达式语句表达式分号。#include stdio.h int main() { int a 1; a 0; //赋值表达式语句 b a 5;//算术表达式语句 a //自增表达式语句 return 0; }6.3 函数调用语句函数调用的时候也会加上分号就是函数调⽤语句。printf(hello);//printf就是函数函数调用语句 scanf(%d, a);//scanf也是函数6.4 复合语句用{ }包裹多条语句整体看成一条语句。{ int x 5; printf(%d, x); }6.5 控制语句用来控制代码执行流程以实现程序的各种结构方式C语言支持三种结构顺序结构、选择结构、循环结构。C语言有九种控制语句分为3大类1、条件判断也叫分支if...else或if...else if...else、switch2、循环for、while、do...while3、跳转或转向break、continue、goto、return七、注释注释的作用是为了方便自己后面看得懂代码以及让别人也看得懂代码。7.1 /**/ 的注释方式第一种方式是将注释放在/*..*/之间内部也可以分行。方便在多行注释以及代码编译中使用如下所示。#include stdio.h int main() { /* 单行注释 */ printf(测试1\n); /* 多行块注释 printf(这行代码被注释不会执行\n); */ // 行内注释演示 int num /* 存储数字 */ 100; printf(%d\n, num); return 0; }7. 2 // 的注释方式// 这种方式还是经常使用的一种方式就将注释写在// 的后面但是//后面的都会被注释掉。对于这种方式有几种快捷键我在使用ctrl /这也是python注释的快捷键另一种就是ctrl k c然后取消注释是ctrl k c8. 总结这个是我入门C语言的第一节课后面我也会持续更新本文涉及的学习代码已同步上传至 Gitee 仓库https://gitee.com/ZhiWeiCoder/student_c大家可以关注我gitee需要的可以去自行下载如果文章和代码中存在错误或者理解不到位的地方欢迎大家指出交流共同学习进步。

相关新闻

Godot 4游戏模板深度解析:提升开发效率的模块化架构实践

Godot 4游戏模板深度解析:提升开发效率的模块化架构实践

1. 项目概述:为什么你需要一个成熟的游戏模板? 如果你正在用 Godot 4 开发游戏,尤其是作为独立开发者或小型团队的一员,那么你大概率经历过这样的场景:新建一个空白项目,然后开始搭建基础框架——创建场景树…

2026/8/1 12:57:35 阅读更多 →
Python 基础之import语句

Python 基础之import语句

Python 基础之import语句 Python提供了强大的模块支持,主要体现在,不仅 Python 标准库中包含了大量的模块(称为标准模块),还有大量的第三方模块,开发者自己也可以开发自定义模块。通过这些强大的模块可以极…

2026/8/1 12:57:35 阅读更多 →
提示词工程IDE:AI交互的可视化与工程化实践

提示词工程IDE:AI交互的可视化与工程化实践

1. 项目概述:当提示词工程遇上IDE思维 这个23.7K Star的开源项目本质上是一场AI工程化的革命。传统的大模型交互就像在黑暗厨房里凭感觉加调料——你永远不知道下一勺盐会让菜品变咸还是引发爆炸。而这个工具把混沌的提示词编写变成了可视化电路板设计,每…

2026/8/1 12:57:34 阅读更多 →

最新新闻

Raspberry Pi Debug Probe:从CMSIS-DAP原理到嵌入式调试实战

Raspberry Pi Debug Probe:从CMSIS-DAP原理到嵌入式调试实战

1. 从“裸板”到“跑通”:为什么你需要一个调试探针如果你玩过树莓派,大概率经历过这样的场景:你满怀期待地焊接好一块全新的RP2040芯片(比如Pico)或者其它微控制器,插上USB线,电脑却毫无反应。…

2026/8/1 14:00:58 阅读更多 →
Jetson Xavier NX开发实战:从硬件解析到AI模型边缘部署

Jetson Xavier NX开发实战:从硬件解析到AI模型边缘部署

1. 项目缘起:为什么是Jetson Xavier NX?如果你在嵌入式AI、边缘计算或者机器人领域摸爬滚打过一阵子,大概率会听过NVIDIA Jetson系列的大名。从早期的TK1、TX1,到后来的Nano、TX2,再到如今的AGX Orrin和Xavier NX&…

2026/8/1 14:00:58 阅读更多 →
【锁3】Semaphore(信号量)

【锁3】Semaphore(信号量)

Semaphore(信号量)的核心是用 N 张“许可证”限制同时访问资源的线程数——线程进来先 acquire() 拿一张,用完 release() 还回去;许可证发完了,后面的线程就得排队。下面给你 Java 最常用版本的可运行示例。 核心概念 …

2026/8/1 14:00:58 阅读更多 →
MiniMax H3 深度解析:打破模态界限,全能多模态模型优势在哪

MiniMax H3 深度解析:打破模态界限,全能多模态模型优势在哪

今天,正式发布 MiniMax H3。这是一款通用的全模态生成模型,支持对文本、图像、视频、声音组成的多模态上下文的统一理解能力、能够输出具备原生双声道的音视频,最高可支持 15s 2K 分辨率。 MiniMax H3 具备商用级的多场景内容生成能力&#x…

2026/8/1 14:00:58 阅读更多 →
STM32 FSMC驱动SSD1963 LCD:8080时序硬件解析与实战

STM32 FSMC驱动SSD1963 LCD:8080时序硬件解析与实战

1. 项目概述:从时序图到点亮屏幕的完整旅程 搞嵌入式显示的朋友,对SSD1963这颗经典的LCD驱动芯片应该不陌生。它支持高达864x480的分辨率、24位真彩色,还能直接挂载SDRAM作为显存,在当年算是相当强悍的“显卡”了。但它的8080并行…

2026/8/1 14:00:58 阅读更多 →
Slidev终极指南:让技术演示告别枯燥的开发者利器

Slidev终极指南:让技术演示告别枯燥的开发者利器

Slidev终极指南:让技术演示告别枯燥的开发者利器 【免费下载链接】slidev Presentation Slides for Developers 项目地址: https://gitcode.com/GitHub_Trending/sl/slidev 还在为技术演示而烦恼吗?每次分享代码时,要么在PPT中截图导致…

2026/8/1 13:59:55 阅读更多 →

日新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/8/1 13:02:46 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/8/1 5:19:34 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/8/1 10:33:33 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →