C变量初始化.docx

上传人:scccc 文档编号:13551789 上传时间:2022-01-15 格式:DOCX 页数:1 大小:66.36KB
返回 下载 相关 举报
C变量初始化.docx_第1页
第1页 / 共1页
亲,该文档总共1页,全部预览完了,如果喜欢就下载吧!
资源描述

《C变量初始化.docx》由会员分享,可在线阅读,更多相关《C变量初始化.docx(1页珍藏版)》请在三一文库上搜索。

1、c变量初始化前而我们多次提到过初始化的概念,不过始终没有详细讨论。本节将对前面讨论的各种 存储类的初始化规则做一个总结。在不进行显式初始化的情况下,外部变量和静态变量都将被初始化为0,而自动变量和寄 存器变量的初值则没有定义(即初值为无用的信息)。定义标量变量时,可以在变量名 后紧跟一个等号和一个表达式来初始化变量:int x = 1; char squota = 11;long day = 1000L * 60L * 60L * 24L; /* milliseconds/day */对于外部变量与静态变量来说,初始化表达式必须是常量表达式,且只初始化一次(从概念 上讲是在程序开始执行前进行初

2、始化)。对于自动变量与寄存器变量,则在每次进入函数或 程序块时都将被初始化。对于自动变量与寄存器变量来说,初始化表达式可以不是常量表达式:表达式中可以包 含任意在此表达式之前已经定义的值,包括函数调用,我们在3.3行中介绍的折半查找程序 的初始化可以采用下列形式:int binsearch(int x, int v, int n) (int low = 0;int high = n - 1;int mid; 代替原来的形式: int low, high, mid; low = 0;high = n - 1;实际上,自动变量的初始化等效于简写的赋值语句。究竟采用哪一种形式,还得看个人的习 惯。考

3、虑到变量声明中的初始化表达式容易被人忽略,且距使用的位置较远,我们一般使用 显式的赋值语句。数组的初始化可以在声明的后而紧跟一个初始化表达式列表,初始化表达式列表用花括 号括起来,各初始化表达式之间通过逗号分隔。例如,如果要用一年中各月的天数初始化数 组days,其变量的定义如下:int days = 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);当省略数组的长度时,编译器将把花括号中初始化表达式的个数作为数组的长度,在本例中 数组的长度为12。如果初始化表达式的个数比数组元索数少,则对外部变量、静态变量和自动变量来说, 没有初始化表达式的元素将被初始化为0,如果初始化表达式的个数比数组元素数多,则是 错误的。不能一次将一个初始化表达式指定给多个数组元素,也不能跳过前面的数组元素而直 接初始化后面的数组元素。字符数组的初始化比较特殊:可以用一个字符串来代替用花括号括起来并用逗号分隔的初始化表达式序列。例如:char pattern = Hould H;它同下面的声明是等价的:char pattern = 1u1z 1, d);这种情况下,数组的长度是5 (4个字符加上一个字符串结束符0,), 1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1