📄 c33.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>数组的初始化</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<script language="javascript">
var prePage="http://www.nec.sjtu.edu.cn/support/Course/C/c/c3/c/c3/c32.htm";
var nextPage="c/c3/c34.htm";
</script>
<link rel="stylesheet" href="../cstyle.css" type="text/css">
</head>
<body background="../img/mainback.jpg" bgproperties="fixed">
<h2 align="center"><font face="楷体_GB2312">3.3 数组的初始化</font></h2>
<hr>
<blockquote>
<p align="center"><font color="#0000FF"><big>static int integers[5]={0,12,73,4,5};</big></font><img
src="../img/c311.gif" alt="c311.jpg (5990 bytes)" align="right" WIDTH="153" HEIGHT="201"></p>
<p> 我们可以用一个以大括号括起的值表来初始化数组,
以逗号分隔值表中的值。但是, 说明语句前必须有 static 或 extern
。在下一章讨论存储类之后, 其原因就清楚了。在 C 语言中,
数组在主存储器中保留一片连续的存储单元。最低的地址对应于第一个元素,
而最大的地址对应于最后一个元素。于是, 数组 integers
如右图所示的那样, 存储在主存储器中。</p>
<p> static 必须放在数组的类型定义的前面。 只有 static
和 extern 数组可以用这种方法初始化。 上例中数 5 可以省略,
在这种情况下, 编译系统将根据括号内包含的表的项目数,
决定数组的长度。大括号 {}
用来括起初始值表。表中的值与数组的相应元素一一对应。如果初始值表中的值的个数比
[] 中定义的数组长度小, 那么, 余下的数组元素被初始化为 0。</p>
<p><img src="../img/c312.gif" alt="c312.jpg (5484 bytes)" align="right" WIDTH="154"
HEIGHT="201"></p>
<p> 现在,
我们再看两个初始化数组的例子。请仔细读一下程序,
想一想程序运行的结果是什么。首先,
我们看一下初始化字符数组的语句。</p>
<p align="center"><font color="#0000FF"><big>static char word[]={'H','e','l','l','o','!'};</big></font></p>
<p align="left">结果如右图所示。</p>
<p align="left"> </p>
<p align="left"> </p>
<table border="0" width="88%">
<tr>
<td width="43%"> <p align="left">现在,
我们再看两个初始化数组的例子。请仔细读一下程序,
想一想程序运行的结果是什么。</p>
<p align="center"><font color="#0000FF"><big>static int integers[5]={0,12,73};</big></font></td>
<td width="57%"><!-- Aftershock c313.swf 3=200 4=250 18 19 40 -->
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=3,0,0,0" ID="c313"
WIDTH="200" HEIGHT="250">
<param name="movie" value="../movie/c313.swf">
<param name="loop" value="false">
<param name="quality" value="autohigh">
<param name="menu" value="false">
<param name="bgcolor" value="#E6E6E6"><embed SRC="../movie/c313.swf" swLiveConnect="FALSE" WIDTH="200" HEIGHT="250" LOOP="false"
QUALITY="autohigh" MENU="false" BGCOLOR="#E6E6E6" TYPE="application/x-shockwave-flash"
PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">
</object>
<!-- EndAftershock c313.swf --> </td>
</tr>
</table>
</blockquote>
<p align="left"> </p>
<p align="center"><a href="http://www.nec.sjtu.edu.cn/support/Course/C/c/c3/c34.htm"><img src="../img/next.gif" width="145" height="30"
alt="next.gif (3633 bytes)" border="0"></a></p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -