text4-0.htm

来自「浙江大学计算机学院数据结构课程的教学课件」· HTM 代码 · 共 56 行

HTM
56
字号
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body bgcolor="#FFFFFF" link="#0000FF" vlink="#3399FF" alink="#FF0066">
<div id="Layer1" style="position:absolute; width:711px; height:21px; z-index:1; top: 10px; background-color: #CCCCCC; layer-background-color: #CCCCCC; border: 1px none #000000; left: 26px"><b>|</b><font face="宋体" size="2"><a href="../text1/text1-0.htm">第一章</a></font><b>|</b><font face="宋体" size="2"><a href="../text2/text2-0.htm">第二章</a></font><b>|</b><font face="宋体" size="2"><a href="../text3/text3-0.htm">第三章</a></font><b>|</b><font face="宋体" size="2">第四章</font><b>|</b><font face="宋体" size="2"><a href="../text5/text5-0.htm">第五章</a></font><b>|</b><font face="宋体" size="2"><a href="../text6/text6-0.htm">第六章</a></font><b>|</b><font face="宋体" size="2"><a href="../text7/text7-0.htm">第七章</a></font><b>|</b><font face="宋体" size="2"><a href="../text8/text8-0.htm">第八章</a></font><b>|</b><font face="宋体" size="2"><a href="../text9/text9-0.htm">第九章</a></font><b>|</b><font face="宋体" size="2"><a href="../text10/text10-0.htm">第十章</a></font><b>|</b><font size="2" face="宋体"><a href="../textA/textA-0.htm">算法分析</a><b><font color="#000000">|</font></b> 
  </font></div>
<pre align="left">

<b><font face="Arial, Helvetica, sans-serif" size="4" color="#FF0000">4.1  Pointers </font><font face="Arial, Helvetica, sans-serif" size="4" color="#000000">

     <font color="#FF0000">& </font>     the address operator
     <font color="#FF0000">* </font>      the deferencing ( or indirection ) operator
                                <i>int  i, *pi ;
                                pi =  & i;  i = 10;  *pi = 10;
</i>
  <font color="#FF0000">other operations:</font>
           assign a pointer to a variable of type pointer
           arithmetic operations ( + - * / ) on a pointer

<font color="#FF0033"> </font></font><font face="Arial, Helvetica, sans-serif" size="4" color="#FF0033"> a high degree of  flexibility  and efficiency</font><font face="Arial, Helvetica, sans-serif" size="4" color="#000000">

<font color="#0033CC">wise programming:</font>

1) set all pointers to NULL when they are not actually  pointing 
    to an object.   the null pointer is represented by the integer 0   
2) use explicit type casts when converting between  pointer    types 
   <font color="#FF0000">  <i>pi = malloc( sizeof (int))</i></font><i>; <font size="3" color="#FF0099">   /* assign to pi a pointer to int */</font></i>
    <i> <font color="#FF0000">pf =  (float * ) pi; </font>     </i>            <i><font size="3" color="#FF0099"> /* cast an int pointer to a float pointer */</font></i>
3) define explicit return type for function
4) using dynamically allocated storage  (<font color="#FF0000">malloc, free</font>)
     
<i>int  i, *pi;
float  f, *pf;
pi = <font color="#FF0000">(int *) malloc(sizeof(int))</font><font face="Arial, Helvetica, sans-serif" size="4">;
pf = <font color="#FF0000">(float *) malloc(sizeof(float))</font>;
*pi = 1024;
*pf = 3.14;
printf ("an integer = %d, a float = %f \n", *pi, *pf );
<font color="#FF0000">free(pi)</font>;
<font color="#FF0000">free(pf)</font>;

</font></i></font></b></pre>
<table width="731" cellspacing="0" cellpadding="0">
  <tr> 
    <td width="327">&nbsp;</td>
    <td width="271"><a href="../index.htm"><img width="60" height="25" usemap="#MapMap4" border="0" src="../../images/home.gif"></a><a href="../index.htm"><map name="MapMap4"><area shape="rect" coords="42,-34,88,-15" href="text0.htm"><area shape="rect" coords="4,4,55,23" href="text4-index.htm"></map></a></td>
    <td width="131"><font face="楷体_GB2312" size="2"><b><a href="../text0.htm">上一页</a> 
      <a href="text4-1.htm">下一页</a> </b></font></td>
  </tr>
</table>
</body>
</html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?