C语言理论题经验分享2

本文详细介绍了C语言中关于switch语句、sizeof运算符、数据类型转换、文件I/O、if条件判断、结构体和const常量的使用规则。重点讨论了switch的执行流程、sizeof操作不实际执行表达式、数据类型转换的规则、文件操作的基本概念以及结构体的声明与使用限制。同时,解释了const变量的特性及其在指针上下文中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C语言理论题经验分享2

本文是接上一篇博文的^^:

理论题经验分享1

1.关于switch

1)switch后的每一个case,后不加break会一直执行下去

2)switch(expert1)中的expert1只能是常整数(整数表达式或枚举常量),不能是变量

2.关于sizeof()

1)sizeof(str)会返回字符串长度+1(‘\0’)

2)sizeof(++a); 只进行sizeof操作,只看类型,不对()内表达式进行实际运算!

3.算数中的数据类型转换

算数运算中,首先有如下类型转换规则:

​ 1)字符必须先转换为整数(C语言规定字符类型数据和整型数据之间可以通用) 。

​ 2)short型转换为int型(同属于整型) 。

​ 3)float型数据在运算时一律转换为双精度(double)型,以提高运算精度(同属于实型) 。

4.文件输入\输出(IO)

关于文件的输入输出写在了这篇文章里面:

IO操作

5.关于if()中的条件

1)If(expr1 && expr2)中,当第一个条件不符合时不会再验证第二个

2)当if语句中的条件为赋值语句时,实际上是将赋值后的结果与0进行比较【左值】

​ if(1) 由于1>0 所以认为是true

6.关于结构体

1)结构体成员不能是函数

2)如果在某个函数中声明,只能在这个函数中用它来定义变量。

3)声明结构体类型时,不能对里面的变量进行初始化。

4)结构体成员可以是结构体变量。

5)结构体变量的首地址就是第一个成员的首地址

6)只要不冲突都可以重名,例如结构体中元素的名字可以和函数中的变量名相同

7)应用:可以使函数带多个返回值

8)不能在结构体中进行输出!!

7.关于const

需要在定义时赋初值,将该变量变为只读变量,不允许重新赋值

如果没有初始化,系统会自己存入一个很小的负数

生命周期是程序运行的整个过程

仍是一个变量,不能做数组长度

关于指针:int * const p —— 指针是常量

​ int const* p == const int* p ——指针指向的东西是常量

  • const p —— 指针是常量

​ int const* p == const int* p ——指针指向的东西是常量

​ const int* const p ——指向常量的常量指针

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值