查看: 1700|回复: 1

如何学好C语言-指针

[复制链接]

该用户从未签到

发表于 2014-12-5 15:33:03 | 显示全部楼层 |阅读模式
分享到:
 
 
 复习运算符
(关系运算与逻辑运算)
 
#include "stdio.h"
 
void main()
 
{
 
  int a=1,b=2,m=0,n=0,k;printf("%d\n",m);
 
  k=(n=b>a)||(m=aa-b?a++:++b,++a,b+5));
 
}//%d 整形输出  %c 字符  %s 字符串 %f 浮点
 
复习函数(带形参的返回函数值可以做判断语句的条件)
 
#include “stdio.h”
 
char delay(char t);
 
char delay(char t)  //t=3
 
{
 
t++;   //t=4
 
return t;
 
}
 
void main()
 
{
 
char i=8,k;
 
 if(i>delay(2))
 
 {
 
         k=delay(3);  //k=4
 
         i++;    //i=9
 
         printf("k=%d,i=%d",k,i);
 
         }   
 
}
 
复习全局变量做形参其值不变
 
#include "stdio.h"
 
void delay(int y);
 
int y=3;
 
void delay(int y)  //y=5
 
{
 
  for(;y
回复

使用道具 举报

该用户从未签到

 楼主| 发表于 2014-12-5 15:33:19 | 显示全部楼层

回复: 如何学好C语言-指针

二、指针的指针
指针的指针看上去有些令人费解。它们的声明有两个星号。例如:
char ** cp;
如果有三个星号,那就是指针的指针的指针,四个星号就是指针的指针的指针的指针,依次类推。当你熟悉了简单的例子以后,就可以应付复杂的情况了。当然,实际程序中,一般也只用到 二级指针,三个星号不常见,更别说四个星号了。
指针的指针需要用到指针的地址。
char c='A';
char *p=&c;
char **cp=&p;
通过指针的指针,不仅可以访问它指向的指针,还可以访问它指向的指针所指向的数据。下面就是几个这样的例子:
char **p1=*cp;
char c1=**p1;
你可能想知道这样的结构有什么用。利用指针的指针可以允许被调用函数修改局部指针变量和处理指针数组。
#include "stdio.h"
void FindCredit(int **);
main()
{
int vals[]={7,6,5,-4,3,2,1,0};
int *fp=vals;
FindCredit(&fp);
printf("%d\n",*fp);
}
void FindCredit(int ** sp)
{
while(**sp!=0)
if(**sp
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条



手机版|小黑屋|与非网

GMT+8, 2025-1-11 21:05 , Processed in 0.125330 second(s), 17 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.