一.初识c语言 (基本定义及注意点)

  1. C语言发展史,学习C语言的必要性
    (1) 发展史C语言由贝尔实验室的Dennis Ritchie在1972年左右开发,最初是为了重新实现UNIX操作系统而设计的
    C语言结合了高级语言的强大功能与汇编语言的灵活性,很快成为最受欢迎的编程语言之一

(2)必要性C语言因其高效性和控制底层硬件的能力而被广泛用于系统编程
如操作系统、嵌入式系统和驱动程序的开发。学习C语言可以帮助理解计算机科学的基础概念,如内存管理、指针操作等,这对于想要深入了解计算机内部工作原理的开发者来说是非常重要的。此外,许多现代编程语言的设计都受到了C语言的影响,因此掌握C语言也有助于学习其他编程语言

  1. 编译和链接是什么?过程是什么?
    (1)编译编译是将源代码转换成机器语言的过程
    在C语言中,编译器(如gcc)读取源代码文件(.c文件),检查语法错误,然后生成目标代码文件(通常是.obj或.o文件)。这个过程包括词法分析、语法分析、优化和代码生成等步骤

    (2)链接链接是将一个或多个目标代码文件以及库文件组合成一个可执行文件的过程
    链接器(如ld)负责解析文件之间的引用,将它们合并,并最终生成可以在特定操作系统上运行的二进制文件(.exe文件)

  2. 各个编译器我该使用什么?vs的优势?
    (1) 选择编译器选择编译器取决于你的项目需求、平台兼容性、性能要求和个人偏好

    • 常见的C语言编译器包括GCC(跨平台)、Clang(注重错误信息质量)、Microsoft Visual C++(Windows平台)等

    (2)VS的优势Microsoft Visual Studio(VS)是一个集成开发环境(IDE),它提供了强大的编辑器、调试器和性能分析工具
    VS的优势在于它的用户界面友好、与Windows平台的深度集成、以及对大型项目的良好支持。此外,VS还提供了对多种编程语言的支持,使得在一个环境中可以开发多种类型的应用程序。

  3. main函数究竟是啥?
    (1)main函数:在C语言中,main函数是程序的入口
    一个程序的执行是从main函数开始

当运行一个C程序时,操作系统会调用main函数开始执行程序。main函数的典型定义如下:
int main()
{
// 程序主体
return 0;
}

  1. 关键字有哪些? 要背诵吗?
    (1)关键字C语言的关键字是预定义的保留标识符,具有特殊含义,不能用作变量名或其他用户定义的实体名称

常见的关键字包括auto break case char const continue default do double enum
extern float for goto if int long reister return short signed
sizeof static struct switch void typedef union unsigned volatile while

(2) 是否要背诵:虽然不需要死记硬背所有的关键字,但在学习和编写C语言程序的过程中,熟悉并理解这些关键字的用途是很重要的
随着编程实践的增加,这些关键字会逐渐变得熟悉

  1. 字符?asc码?字符计算?
    (1) 字符:在C语言中,字符类型用char表示,可以存储单个字符
    字符常量用单引号括起来,如'a', 'B', '$'

    (2) ASCII码:ASCII码是一种字符编码标准,用于将字符映射到整数值
    例如:
    字符A–Z的ASCII码值从65–90字符a–z的ASCII码值从97–122
    对应的大小写字符(a和A)的ASCII码值的差值是32数字字符0–9的ASCII码值从48–57
    换行\n 的ASCII值是:10
    在这些字符中ASCII码值从0~31这32个字符是不可打印字符,无法打印在屏幕上观察

    (3) 字符计算:由于字符在内部是以整数形式存储的,所以可以进行算术运算
    例如,可以通过加减整数来获取字符的对应大小写字母或进行字符排序

  2. C语言的字符串?字符和字符串有何区别?
    (1) 字符串:在C语言中,字符串是一系列字符的集合,以空字符'\0'结尾
    字符串常量用双引号括起来,如"Hello, world!"。字符串可以使用字符数组或字符指针来存储

    (2) 区别字符是单个字符,占用一个字节的内存空间,而字符串是字符序列,需要额外的空间来存储结束符'\0'
    字符串的操作通常涉及到长度计算、复制、拼接等,而字符则更侧重于单个字符的处理

  3. sizeof和strlen?竟然有坑?
    (1) sizeofsizeof是一个运算符,用于获取数据类型或变量所占用的字节数
    它可以应用于类型名、变量名或数组名
    例如,sizeof(int)返回整型变量占用的字节数

    (2) strlenstrlen是一个函数,用于计算字符串的长度,即字符串中字符的个数(不包括结束符'\0')。它只能用于以'\0'结尾的字符串

    (3)坑点:使用sizeofstrlen时需要注意它们的差异
    **sizeof计算的是整个数组占用的内存空间,包括未使用的部分和结束符**;
    而**strlen只计算有效字符的个数**,如果混淆使用,可能会导致内存溢出或计算错误

  4. 转义字符是什么?平时怎么用呢?
    (1) 转义字符转义字符是以反斜杠\开头的特殊字符序列,用于表示那些在字符串或字符常量中不易直接输入的字符
    如换行符\n、制表符\t、回车符\r、退格符\b

    (2) 使用方法转义字符可以直接嵌入到字符串或字符常量中,用于控制文本的格式或表示特殊字符
    例如,要在字符串中插入双引号,可以使用转义字符\",如"He said, \"Hello!\""。在实际编程中,合理使用转义字符可以使代码更加清晰和易于理解。

  • 27
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值