⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c61.htm

📁 经典c语言教程
💻 HTM
字号:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>指针基础 </title>
<script language="javascript">
   var prePage="c/c6/c60.htm";
   var nextPage="c/c6/c62.htm";
</script>

<link rel="stylesheet" href="../cstyle.css" type="text/css">
<bgsound src="../voice/c61.au" loop="1">
</head>

<body background="../img/mainback.jpg" bgproperties="fixed">

<h2 align="center"><font face="楷体_GB2312"><a name="_top"></a>6.1 <font COLOR="#000000">指针基础</font></font></h2>

<hr>

<h3>1.什么是指针</h3>

<blockquote>
  <p>X, Y 是存储在内存单元 1010, 1012 中的两个变量。若我们写 X=100,则整数 
  100 被放入内存单元 1010 中。</p>
</blockquote>

<h3>2.指针定义的方法</h3>

<blockquote>
  <p><font color="#000080"><strong><big>type * var;</big><br>
  </strong></font>类型说明表示了指针所指向的变量的类型。星号 * 
  表示变量本身是一个指针。<br>
  在此举例指针是怎样说明的:<br>
  int *pi;<br>
  char *pc;<br>
  float *pf, *pg;</p>
</blockquote>

<h3>3.指针的运算方法</h3>

<blockquote>
  <p>两个重要的运算符: <font color="#FF0000">&amp;</font> 和 <font color="#FF0000">*</font>。取地址运算符 
  <font color="#FF0000">&amp;</font> 给出变量的地址。间访运算符 <font
  color="#FF0000">*</font></p>
  <p>给出指针所指向的地址中的内容。<br>
  看下例:</p>
  <table border="0" width="87%">
    <tr>
      <td width="24%">int x,ball=100;</td>
      <td width="54%">说明了二个变量。</td>
      <td width="43%" rowspan="4"><img src="../img/c611.gif" alt="c611.jpg (3315 bytes)"
      WIDTH="191" HEIGHT="100"></td>
    </tr>
    <tr>
      <td width="24%">int *ptr;</td>
      <td width="54%">说明了指针 ptr。</td>
    </tr>
    <tr>
      <td width="24%">ptr=&amp;ball;</td>
      <td width="54%">使指针 ptr 指向变量 ball。</td>
    </tr>
    <tr>
      <td width="24%">x=*ptr;</td>
      <td width="54%">*ptr 是指针所指地址内的内容。<br>
      x 被赋值为 100。</td>
    </tr>
  </table>
  <p>看一个程序吧:<br>
  main()<br>
  {<br>
  &nbsp;&nbsp;&nbsp; char ch_var = 'A';<br>
  &nbsp;&nbsp;&nbsp; char *ch_pointer = &amp;ch_var;<br>
  &nbsp;&nbsp;&nbsp; printf(&quot;%c %c\n&quot;,ch_var,*ch_pointer);<br>
  &nbsp;&nbsp;&nbsp; ch_var = 'd';<br>
  &nbsp;&nbsp;&nbsp; printf(&quot;%c %c\n&quot;,ch_var,*ch_pointer);<br>
  &nbsp;&nbsp;&nbsp; *ch_pointer = 'a';<br>
  &nbsp;&nbsp;&nbsp; printf(&quot;%c %c\n&quot;,ch_var,*ch_pointer);<br>
  }</p>
  <p>解释:<br>
  1. 可以用普通的方法对指针赋值。<br>
  2. 语句 *ch_pointer='a' 把 'a' 赋值给 ch_pointer 所指向的变量 ch_var。<br>
  &nbsp;&nbsp;&nbsp; 因此, ch_var 的值也变为 'a' 了。<br>
  3. 该程序的结果如下:<br>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; A A<br>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; d d<br>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a a</p>
  <p align="right"><a href="c61.htm#_top.html#_top">返回页首</a></p>
</blockquote>

<p align="center"><a href="http://www.nec.sjtu.edu.cn/support/Course/C/c/c6/c62.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 + -