![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
指针相关内容
WP2908392647
这个作者很懒,什么都没留下…
展开
-
使用指针常见错误。
使用指针的常见的错误:① 使用未初始化的指针 int *pa; printf("\%d",*pa); /*输出一个随机的结果*/ 也就是所谓的“野指针”,很危险。② 指针赋值常量float *pf=12.345 /*编译报错*/int *pi=100 /*不能将一个非地址的值存放到指针变量中*/③ void 类型指针表示类型不确定的指针int a=100;void *pa=&a;prin...原创 2021-12-07 20:20:12 · 362 阅读 · 0 评论 -
指针变量的长度。
指针变量中保存的是所指对象的内存地址,指针变量本身的长度是一个固定值,与指针的类型无关。#include<stdio.h>int main(){ int *i; char *c; long *l; float *f; printf("\n%3d%3d%3d%3d",sizeof(i),sizeof(c),sizeof(l),sizeof(f)); return 0;}...原创 2021-12-07 20:15:13 · 1112 阅读 · 0 评论 -
输出两个数的关系与和。
#include<stdio.h>int main(){ int a,b,*pa=&a,*pb=&b,*pc=NULL,sum; scanf("%d%d",pa,pb); //等价于scanf("%d,%d",&a,&b) if(*pa<*pb) { pc=pa; pa=pb; pb=pc; } printf("max is:%d,min is:%d,sum is:%d",*pa,*pb,*pa+*pb); retur.原创 2021-12-05 21:05:07 · 101 阅读 · 0 评论 -
访问指针所指变量。
#include<stdio.h>int main(){ long a,b; long *pa,*pb; pa=&a; pb=&b; *pa=10; *pb=100; printf("\ta=%ld,\t*pa=%ld\n",a,*pa); printf("\tb=%ld,\t*pb=%ld\n",b,*pb); pa=pb; printf("\tb=%ld,\t*pb=%ld",b,*pb); return 0; } ...原创 2021-12-05 19:22:08 · 372 阅读 · 0 评论 -
指针可以被初始化为0或NULL。
NULL是标准头文件<stdio.h>中定义的宏常量。指针初始化为0或NULL的方式为:指针变量名=0(NULL)其中:指针初始化为0或NULL,表示其目前还未指向任何对象。例如: double *pd=NULL; /* 等价于 pd=0 */...原创 2021-12-05 18:51:28 · 3751 阅读 · 0 评论 -
3.使用指针变量初始化其它同类型指针变量
使用指针变量初始化其它指针变量的方式为:指针变量名1=指针变量名2; 例如: 定义时初始化: float a=3.5,*pa=&a; float *pb=pa; 定义后初始化: float a=3.5,*pa,*pb; pa=&a; pb=pa; ...原创 2021-12-05 18:47:59 · 279 阅读 · 0 评论 -
指针指向数组的初始化。
指针指向数组初始化的方式为:指针变量名=数组名;例如: 定义时初始化: int a[5] ,*p=a; 定义后初始化: int a[5],*p; p=a; /* 此处不能为p=&a */上述两种形式等价。在C语言中,一维数组名是数组的指针,指向数组首元素。(简单来说:...原创 2021-12-05 18:34:51 · 5261 阅读 · 0 评论