面试题总结

1. Static的作用

static的本质是延长变量或函数的生命周期,同时限制其作用域。

static声明的全局变量、函数,仅当前文件内可用,其他文件不能引用。

static在函数内部声明的内部静态变量,只需初始化一次。

而且变量存储在全局数据段(静态存储区)中,而不是栈中,其生命周期持续到程序退出。

2. Typedef的作用

类型的重定义,可以对已有的类型重定义为新的类型名 构造类型 指针类型,typedef int * 函数指针

define特点:单纯替换(代替代码,表达式,常量,变量,数据类型,)原样替换,

typedef和define的区别 (宏定义,在预编译阶段就进行处理,简单的字符串代换,)

3. Const作用

const是常量化的意思;

可以修饰变量,可以修饰指针

当修饰变量的时候,因为不可以通过变量名对变量的值进行修改,所以在定义变量的时候需要给变量初始化,

当修饰指针的时候,const位置不同修饰的指针的指向或内容不能改变;变量前加不能。

4. Sizeof和strlen区别

strlen是函数,用于计算字符串的长度;不包含`\0`;

sizeof是关键字,用于计算变量所占内存空间的大小;当sizeof计算字符串长度的时候,包含`\0`;

5. 全局变量和局部变量的区别

定义:全局变量是定义在函数外部的变量,局部变量是定义在函数内部的变量

存储位置:全局变量存储在全局区,局部变量存储在栈区

作用域:全局变量可以在程序任意位置使用,局部变量只能在函数内部使用

生命周期:全局变量的声明周期为整个程序,程序结束空间释放,局部变量生命周期为本函数,函数结束空间释放。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值