当前位置: 首页 > news >正文

学校网站建设的意义的主要负责人站长工具pr值查询

学校网站建设的意义的主要负责人,站长工具pr值查询,免费算命,中交通力建设股份有限公司网站C语言灵魂指针1.什么是指针?2.指针的大小3.指针的分类3.1比较常规的指针类型3.2指针的解引用操作3.3野指针野指针的成因:4.指针运算4.1指针加减整数4.2指针-指针1.什么是指针? 这个问题我们通常解释为两种情况: 1.指针本质&#…

C语言灵魂指针

  • 1.什么是指针?
  • 2.指针的大小
  • 3.指针的分类
    • 3.1比较常规的指针类型
    • 3.2指针的解引用操作
    • 3.3野指针
      • 野指针的成因:
  • 4.指针运算
    • 4.1指针加减整数
    • 4.2指针-指针

1.什么是指针?

这个问题我们通常解释为两种情况:
1.指针本质:指针是内存中一个最小单元编号,也就是地址;
2.我们通常说的指针,其实是表示指针变量,是用来存放地址的变量工具;
总结:指针是指针变量用于存放变量地址的变量工具,本质是地址

2.指针的大小

指针大小这里就直接给出答案:
在32位平台,指针(地址)大小为4个字节;
在64位平台,指针(地址)大小为8个字节;

3.指针的分类

指针分类还是比较多,也相对来说比较丰富,接下来我们就一个个来了解指针的类型吧!

3.1比较常规的指针类型

char  *p = NULL;
short *p = NULL;
int   *p = NULL;
long  *p = NULL;
float *p = NULL;
double*p = NULL;

有上面的比较常见的指针类型,不难得出:指针的定义方式为---->type + *

而且这里还有个性质:
定义的type为什么类型,那么指针变量存储的相应类型的变量地址。

举个例子:
比如char*类型的指针,是为了存放char类型变量的地址

char ch='w';
char *p=&ch;
//这里&(取地址符号),是为了取出ch变量的地址;

提出疑问,指针这么多类型有什么意义呢?
回答:不同类型的指针也就有着不同的“步长”,也就是一次性访问的字节大小,比如char指针一次访问1个字节,而int类型的指针一次性就可以访问4个字节。这在C语言的底层 ,意义重大。

说道“步长”就有必要说一下指针加减整数:
在这里插入图片描述
这里就可以看见char类型的指针加整数1,地址变化了1个字节,而int类型的指针加1,地址变化了4个字节

3.2指针的解引用操作

#include <stdio.h>
int main()
{int n = 0x11223344;char *pc = (char *)&n;int *pi = &n;*pc = 0;   //重点在调试的过程中观察内存的变化。*pi = 0;   //重点在调试的过程中观察内存的变化。return 0;}


这里我们可以看到char类型的pc指针,只改变了n的第一个字节;接着往下运行
在这里插入图片描述
我们也容易的发现:int
类型的pi指针,直接把n的4个字节都变成了0;

在个例子中,pc或者是pi如果都按整形打印,那么他们完全就是整形n的值,* +变量指针就是访问变量指针地址,若打印规定%d整形打印,他就会往后把4个字节都翻译了(翻译过程就是补码到原码的过程)

这里也是表明不同类型解引用访问的内存大小不同;

3.3野指针

概念:野指针就是指针指向的位置是不可知道的(随机的、不正确的、没有明确限制的)

野指针的成因:

1.指针未初始化;
2.指针越界访问;
3.指针指向空间释放;

4.指针运算

4.1指针加减整数

指针加减整数,也就是在原指针的基础上,增加或者减少 整数 * sizeo(type)
例如:

#include<stdio.h>
int main()
{
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };int* p1 = arr;
int* p2 = arr + 4;printf("p1=%p\np2=%p", p1, p2);return 0;
}

在这里插入图片描述
我们可以发现p2=p1+4,相当于增加4*sizeof(int)也就是16;

4.2指针-指针

指针减指针代表的是两个地址之间的距离(两地址之间相差的元素个数(int)类型),返回的是int数据。指针和指针之间是没有相加的,相加没有意义;
在这里插入图片描述
总有浪漫值得奔赴!
请添加图片描述

http://www.mmbaike.com/news/40385.html

相关文章:

  • 只做网站不推广能行吗抚州seo排名
  • 做网站最小的字体是多少微信小程序开发平台官网
  • 做rom网站比百度强大的搜索引擎
  • wordpress建站应用广州网络推广外包
  • 江门网站制作推广优化大师win10下载
  • word怎么做网站地推拉新app推广怎么做
  • wordpress 枚举用户外汇seo公司
  • 网站设计思想免费的app推广平台
  • 网站怎么做支付系统导航网站怎么推广
  • 如何做高并发网站的架构设计建立网站
  • 公司网站建设小江世界足球排名前100名
  • 政府网站集约化建设作用文大侠seo博客
  • 新冠疫情防控方案最新版第九版郑州关键词优化顾问
  • 上海做原创网站免费网络推广工具
  • 试玩网站源码seo网络推广技术员招聘
  • 网站推广塔山双喜移动营销
  • 关于.net网站开发外文书籍免费创建自己的网站
  • 做网站如何计算工资网站权重怎么提高
  • 大连网站建设选网龙辽宁网站建设
  • 网站开发设计文档模板做seo是什么意思
  • wordpress authkey成都网站seo报价
  • 现在创业什么行业最好宁波 seo整体优化
  • 如果启动浏览器就能直接打开一个常用的网站主页_要怎么做?网店买卖有哪些平台
  • 拍卖网站怎么做搜索引擎优化的概念是什么
  • net网站开发参考文献夸克搜索入口
  • 网站备案 材料怎么推广公众号让人关注
  • 电商网站设计思维导图网页设计需要学什么软件
  • 都安做网站chrome谷歌浏览器官方下载
  • 五百亿网站建设中山网站建设公司
  • 那个网站教做馒头网络营销的50种方法