c语言如何将第八位置0,c语言程序设计 第08章善于使用指针0.ppt

c语言程序设计 第08章善于使用指针0

例7.12 分别求出1~5的阶乘值,并输出。(p196) #include int fac(int n) { static int f=1 ; /*f为静态局部变量*/ f=f*n; return(f); } void main() { int i; for(i=1;i<=5;i++) printf(“%d!=%d\n”,i,fac(i)); } 注: 静态局部变量“f”的有效范围只限于函数fac,但是生 存期是整个程序,即在fac函数外,它的值仍然存在。再次调用函数时,继续在前一个值上累乘。 若静态局部变量在定义时未初始化,系统自动赋值为0。 3 registc—寄存器变量 一般变量都存储在内存中,而寄存器变量存储在CPU的寄存器中,从而提高存取速度。 现代的计算机,系统可以自动完成此功能。 extern—外部变量的作用域 扩展外部变量的作用域。 习 题 P208: 1、2、3、4、6、7、8、10 [Return] [Return] [Return] [Return] [Return] [Return] [Return] [Return] [Return] [Return] [Return] [Return] 第8章 善于使用指针 8.1 什么是指针 8.2 指针变量 8.3 通过指针引用数组 8.4 通过指针引用字符串 8.1 什么是指针 1 指针是C语言的精华(灵魂) 掌握指针的应用,可以使程序简洁、紧凑、高效。 指针是内存单元的地址 (1) 定义变量——分配存储单元。 (2) 存储单元——包含若干字节。 (3) 每个字节都有一个编号,即地址。 (4) 单元的地址是首字节的地址,即变量的地址。 (5) 地址形象化地成为“指针”,指针即地址。 (6) 变量的地址即变量的指针,指针指向该变量单元。 (7) 将变量的地址存放到一个变量中,此变量称指针变量。 8.2 指针变量 8.2.1 指针变量的定义、初始化和引用 1 定义:int a,b,*p,*q; char ch,*r; 一般式:基类型 *指针变量名; 2 定义指针变量时,可同时初始化: int a,b,*p=&a,*q=&b; char ch,*r=&ch; 3 引用指针变量—3种情况 (1) 给指针变量赋值: 例如:int a,b,*p,*q; p=&a;q=&b; 注:指针变量只能存放地址,并且必须是与指针基类型相同 类型的变量的地址,不能将一个整数赋给指针变量。 (2) 通过指针变量引用指针变量所指的变量 例如: int a ,b,*p,*q; p=&a ;q =&b; *p=20;*q=*p+10; printf (“%d ,%d \n”,*p,*q); printf (“%d ,%d \n ”, a , b); 注意:两个运算符“&”和“*”: &:取地址运算符,&a是变量a的地址。 *:指针运算符,*p是指针p所指的变量。 (3) 引用指针变量的值(即地址值) printf(“%o ,%o \n ”,p , q); 以八进制的数的形式输出指针变量p、q的值。 例8.2 (p214) 输入a,b两个整数,按先大后小顺序输出。 设计算法:使用指针,不交换两个整型变量的值,而是 交换指针变量的值。 编程序: #include void main( )

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很抱歉,我无法提供PPT文件,但我可以向您提供一些关于C语言程序设计指针的基本信息。指针C语言中是非常重要的概念,它允许我们直接访问和操作内存地址。以下是一些关于指针的基本知识: 1. 指针的定义:指针一个变量,其值为内存地址。我们可以使用指针来存储变量的地址,并通过解引用操作符(*)来访问或修改该地址上的值。 2. 指针的声明和初始化:指针变量的声明需要指定所指向的数据类型。例如,声明一个指向整数的指针可以这样写:int *ptr;,其中 * 表示指向整数的指针。 3. 取址运算符(&):取址运算符用于获取一个变量的地址。例如,如果有一个整数变量x,可以使用 &x 来获取它的地址。 4. 解引用运算符(*):解引用运算符用于访问指针所指向的内存地址上的值。例如,如果有一个指向整数的指针ptr,可以使用 *ptr 来获取该地址上存储的值。 5. 指针和数组:在C语言中,数组名本身就是一个指向数组首元素的指针。因此,我们可以使用指针来对数组进行操作。 6. 动态内存分配:C语言提供了几个函数(如malloc、calloc和realloc)来在运行时动态分配内存。这些函数返回一个指向分配内存的指针,我们可以使用指针来访问和操作分配的内存。 这些是关于C语言程序设计指针的一些基本知识点。希望对你有所帮助!如果你有任何更具体的问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值