美文网首页
C语言指针学习

C语言指针学习

作者: 玉宾 | 来源:发表于2020-08-05 20:05 被阅读0次

人生最大的遗憾不是你错过最好的人,而是你错过了那个最想对你好的人。。。

----  网易云热评

一、指针概念

1、指针:内存区的每个字节都有一个编号,这个编号就是内存地址,也就是我们说的指针

2、指针变量:指针变量是存放地址的变量

3、指针也是一种数据类型

int * p;p是变量,int*是数据类型

4、万能指针:void *  可以指向任意类型指针

5、指针步长:void *步长无法确定,所以需要转换,int *步长为4,char *步长为1

6、const:修饰指针,表示该指针是只读状态,不能修改

二、实例应用

#include <stdio.h>

int * p;

int a = 11;

int main() {

       p = &a;

       printf("a的内存地址:%p\n", p);

       printf("a的值:%d\n", *p);

       *p = 22;  //相当于给a赋值

       printf("a的值:%d\n", *p);

       system("pause");

       return 0;

}

&:取a的内存地址

*:取内存地址的值

三、野指针和空指针

1、只有定义后的变量,变量地址才是合法的地址

2、直接指定一个地址都是不合法的,这些不合法的地址就是野指针

3、操作野指针会引起各种报错

int *p=0x1234;

4、空指针:int *p=NULL,为了防止野指针的出现

四、指针大小,32位编译器为4,,64位编译器为8

#include <stdio.h>

int main() {

      int a = sizeof(int *);

      int b = sizeof(double*);

      char* p;

      int c = sizeof(p);

printf("int *的大小为:%d\n", a);

printf("double *的大小为:%d\n", b);

printf("char *的大小为:%d\n", c);

system("pause");

      return 0;

}

五、多级指针

int a=1;

int *p=&a; //p存放着a地址

int **q=&p;//q存放着p的地址

int ***r=&q;//r存放着q的地址

*p=*(p+0)=p[0]

六、指针函数

int *fun(); 返回值是指针类型,返回的是全局变量的地址,如果返回局部变量地址会报错,函数执行完,局部变量会释放

#include <stdio.h>

int a;

int* fun()

{

       return &a;

}

int main() {

       int* p = NULL;

       p = fun();

       *p = 1;

       printf("a=%d\n", *p);

       system("pause");

       return 0;

}

运行结果:a=1

欢迎关注公众号:顺便编点程

相关文章

  • C语言函数指针和指针函数

    C语言函数指针和指针函数 在学习C语言的过程中,“指针函数”和“函数指针”经常容易搞混了, 最简单的辨别方式就是看...

  • C语言05- 指针

    C语言05- 指针 13:指针 指针是C语言中的精华,也是C语言程序的重点和难点。 13.1:指针定义与使用 指针...

  • JNI开发系列①JNI概念及开发流程

    接续上个系列C语言基础及指针 引言 在学习了C语言基础之后 ,我们简单的了解了C语言编程的一些范式 , 了解了指针...

  • C语言指针学习

    人生最大的遗憾不是你错过最好的人,而是你错过了那个最想对你好的人。。。 ---- 网易云热评 一、指针概念 1、指...

  • 两道面试题所引发的C指针的思考

    C语言是一门使用比较广泛的高级编程语言,而指针则是C语言的精髓所在,可以说学习C语言不会灵活使用指针就谈不上精通C...

  • 5.23课程小结

    今天学习了c语言中的指针。指针是c语言中,非常重要的知识点。通过今天的学习。明确了指针的使用方法,初始化方法等。按...

  • 02-C语言的指针

    02-C语言的指针 目标 C语言指针释义 指针用法 指针与数组 指针与函数的参数 二级指针 函数指针 指针在C中很...

  • NDK开发--C语言指针(数组指针,函数指针)

    上一节 C语言基础部分我们了解了C语言中的指针知识,这一节我们开始深入指针的学习,重点是数组指针,函数指针。 第一...

  • C语言指针总结大学霸IT达人

    C语言指针总结大学霸IT达人 C语言的指针是C语言区别其它语言的最主要的特定之一。有了指针,C语言就可以抛开所有束...

  • 带小白学C语言指针

    C语言里指针才是C语言的开始和指针;C语言里基本所有东西都是由指针演变而成; 指针是指向地址的变量,类型就是指针...

网友评论

      本文标题:C语言指针学习

      本文链接:https://www.haomeiwen.com/subject/ovworktx.html