- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
目 录
前言
001 static有什么用途 ?
002 局部变量和全局变量小结 ?
003 死循环格式问题小结 ?
004 数组的循环右移问题
005 按位反转字符问题
006 按位反转整数问题
007 运算符优先级问题
008 去除数组中重复数字问题
009 特殊的去除数组中重复数字问题
010 从相应位置开始删除指定字符串的相应个字符
011 删除指定字符串的相应字符
012 查找整数数组中第二大的数
013 以单词为单位的翻转字符串
本文档使用 看云 构建 - 2 -
前言
前言
原文出处 :我解C语言面试题系列
作者 :ammana_babi
本系列文章经作者授权在看云整理发布 ,未经作者允许 ,请勿转载 !
我解C语言面试题系列
很多c语言面试题不仅能很好的检测一个程序员对c语言的理解 ,还能给予我们学习上带来
很大的启发 ,在这里与大家一起分享下一些经典的c语言面试题目。
本文档使用 看云 构建 - 3 -
001 static有什么用途 ?
001 static有什么用途 ?
【我解C语言面试题系列】001 static有什么用途 ?
【题目】static有什么用途 ?
在网上流传很广的一个答案是 :
1、限制变量的作用域
2、设置变量的存储域
我觉得这样答题是不妥当的 ,有点文不对题的感觉。
下面是我给出的答案 :
static类型声明符在C语言里面主要有三个用途 :
1、声明静态局部变量。
2、声明静态外部全局变量。
3、声明静态外部函数。
下面是我整理的有关上面三个用法的解释说明。另外网友xiaocai0001的 《static用法小结》
一文有更详细的解释 ,请参考。
http///xiaocai0001/archive/2006/04/14/662921.aspx
静态局部变量 (与auto对比 )
1、存储空间分配、作用域和生存期
static分配在静态存储区 ,作用域仅仅限于声明该变量的函数内部。在程序
整个运行期间都不释放 ,生存期贯穿于程序运行的整个过程。
auto类型分配在栈上 ,属于动态存储类别 ,占动态存储区空间 ,作用域仅仅限于声明该变量
的函数内部。函数调用结束后自动释放 ,生存期不过是在声明该变量的函数内部。
2、赋初值时的处理方式
本文档使用 看云 构建 - 4 -
001 static有什么用途 ?
static静态局部变量在编译时赋初值 ,即只赋初值一次 ;
auto自动变量赋初值是在函数调用时进行 ,每调用一次函数重新给一次初值 ,相当于执行一
次赋值语句。
3、未赋初值时的处理方式
如果在定义局部变量时不赋初值的话 :
static静态局部变量 ,编译时自动赋初值0 (对数值型变量 )或空字符 (对字符变量 )。
auto自动变量 ,如果不赋初值则它的值是一个不确定的值。
静态外部全局变量
在C语言中static还用来声明静态外部全局变量 ,那么这个全局变量的作用域就被限制在本文
件内部。
外部变量 (即全局变量 )是在函数的外部定义的 ,它的作用域为从变量定义处开始 ,到本程
序文件的末尾。如果外部变量不在文件的开头定义 ,其有效的作用范围只限于定义处到文件
终了。如果在定义点之前的函数想引用该外部变量 ,则应该在引用之前用关键字extern对该
变量作 “外部变量声明”。表示该变量是一个已经定义的外部变量。有了此声明 ,就可以
从 “声明”处起 ,合法地使用该外部变量。
而如果我们声明的全局变量不想被其他文件访问和使用又该怎么办 ?
那就是在声明的时候前面加上关键字static。
静态外部函数
在C语言中我们的函数默认都是全局的 ,也就是说你可以调用其他文件中的函数。在使用的
时候 ,我们象前面一样在头文件中加上extern就可以了。但是有时候我们写的函数并不想让
别的文件访问和调用 ,那么我们在声明函数的时候前面加上static就可以了。
使
原创力文档


文档评论(0)