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

政务网站建设相关文件seo是什么意思 职业

政务网站建设相关文件,seo是什么意思 职业,怎么制作网页文件,自己做同城购物网站正文开始之前,我们要记住一个东西就是:地址指针 目录 一、指针的解释二、指针变量和地址1、取地址操作符2、指针变量和解引用操作1、指针变量2、拆解指针类型3、解引用操作符4、注意事项 3、指针变量的大小4、指针的解引用5、void*指针 三、指针的运算1、…

在这里插入图片描述

正文开始之前,我们要记住一个东西就是:地址=指针

目录

  • 一、指针的解释
  • 二、指针变量和地址
    • 1、取地址操作符
    • 2、指针变量和解引用操作
      • 1、指针变量
      • 2、拆解指针类型
      • 3、解引用操作符
      • 4、注意事项
    • 3、指针变量的大小
    • 4、指针的解引用
    • 5、void*指针
  • 三、指针的运算
    • 1、指针±整数
    • 2、指针 - 指针
    • 3、指针的关系运算
  • 四、野指针
    • 1、野指针形成的原因
    • 2、指针越界访问
    • 3、指针指向的空间释放
  • 五、const 修饰指针
    • 1、const修饰变量
    • 2、const修饰指针变量

一、指针的解释

通俗来讲就是某一数据的位置。因为数据的存储是需要空间的,这个空间会有一个地址,指针就是用来存放这个地址的,以便于后续快速的访问

二、指针变量和地址

1、取地址操作符

在C语⾔中创建变量就是向内存申请空间

#include <stdio.h>
int main()
{int a = 10;return 0;
}

在这里插入图片描述
我们在内存里可以看到在创建变量a的时候申请了一块空间
我们取地址a之后将地址四行显示,发现a存储在了这个地址里,0a就是十六进制下的10
这里我们介绍一下我们的老朋友,&操作符。在以前的学习中,我们在学习scanf函数的时候接触过这个操作符,这个操作符就叫做取地址操作符。
在这里插入图片描述
&a取出的是a所占的四个字节中地址最小的字节的地址,通过计算机的一套算法,它懂得这个数据是整形,会取出剩下的三个地址

(这时候我们对scanf函数的理解也会深一个层次

scanf("%d",&a);

这里的&a就是取出a的地址,将里边的值进行修改)

2、指针变量和解引用操作

1、指针变量

那我们通过取地址操作符(&)拿到的地址是⼀个数值,这个数值有时候需要存储起来,⽅便后期再使⽤,我们会把这样的地址值存放在指针变量中。

#include <stido.h>
int main()
{int a = 10;int *pa = &a;//这样就把取出的a的地址存放到指针pa中了return 0;
}

指针变量也是变量,专门用来存放地址,存放在其中的值都会被认为是地址

2、拆解指针类型

    int a = 10;int *pa = &a;

*说明pa是指针变量,int 说明pa这个指针变量指向的是一个int类型也就是整型类型的对象
当然如果是short类型的对象那么就

short i = 10;
short *pi = &i;

char类型那么就

char j = 10;
char * pj = &j;

3、解引用操作符

#include <stido.h>
int main()
{int a = 10;int *pa = &a;*pa = 20;return 0;
}

这样就把a的值更改为20了

4、注意事项

int*pa
int *pa
int* pa
int * pa

这几个是一样的,表达上没有任何的区别

3、指针变量的大小

#include <stdio.h>
int main()
{printf("%zd\n", sizeof(char *));printf("%zd\n", sizeof(short *));printf("%zd\n", sizeof(int *));printf("%zd\n", sizeof(double *));return 0;
}

指针变量的大小取决于地址的大小,指针变量的大小和类型是⽆关,只要指针类型的变量在相同的平台下,大小都是相同的

4、指针的解引用

#include <stdio.h>
int main()
{int n = 0x12345678;int *pi = &n; *pi = 0; printf("%d",n):return 0;
}
#include <stdio.h>
int main()
{int n = 0x12345678;char *pi =(char*) &n; //强制转化,不然是不可以用char类型的指针来接受int类型的变量的*pi = 0; printf("%d",n);return 0;
}

第一个运行结果
在这里插入图片描述
第二个的运行结果
在这里插入图片描述
在这里插入图片描述
这说明char类型和int类型的访问权限不同,char类型可以访问一个字节,也就是十六进制下的两位数,int类型可以访问四个字节,也就是十六进制下的八位数

5、void*指针

⽆具体类型的指针,也叫泛型指针,可以接受任何类型的地址
但它不能够进行解引用操作,以及指针±整数的运算(下面来说)

三、指针的运算

1、指针±整数

#include <stdio.h>
int main()
{int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };int* p = &arr[0];int i = 0;int sz = sizeof(arr) / sizeof(arr[0]);for (i = 0; i < sz; i++){printf("%d ", *(p + i));//p+i 这⾥就是指针+整数}return 0;
}

这里的指针经过加减后是通过单位进行访问的,也就是如果是int类型,那么指针就加了四个字节,char加一个字节,short加两个字节。

2、指针 - 指针

#include <stdio.h>
int my_strlen(char* s)
{char* p = s;while (*p != '\0')// \0 之前的元素为字符串中的元素p++;return p - s;
}
int main()
{printf("%d\n", my_strlen("abc"));return 0;
}

这样就可以算出字符串中的元素个数

3、指针的关系运算

#include <stdio.h>
int main()
{int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };int* p = &arr[0];int i = 0;int sz = sizeof(arr) / sizeof(arr[0]);while (p < arr + sz) //指针的⼤⼩⽐较{printf("%d ", *p);p++;}return 0;
}

四、野指针

1、野指针形成的原因

#include <stdio.h>
int main()
{int* p;//局部变量指针未初始化,默认为随机值*p = 20;return 0;
}

2、指针越界访问

#include <stdio.h>
int main()
{int arr[10] = { 0 };int* p = &arr[0];int i = 0;for (i = 0; i <= 11; i++){//当指针指向的范围超出数组arr的范围时,p就是野指针*(p++) = i;}return 0;
}

3、指针指向的空间释放

#include <stdio.h>
int* test()
{int n = 100;return &n;
}
int main()
{int* p = test();printf("%d\n", *p);return 0;
}

这些原因其实都很常见,也很有规矩,看一下就能看出来是理所应当的,没啥需要解释的
想办法规避它们就行了

五、const 修饰指针

1、const修饰变量

#include <stdio.h>
int main()
{int m = 0;m = 20;//m是可以修改的const int n = 0;n = 20;//n是不能被修改的return 0;
}

被const修饰的变量是不能修改的

2、const修饰指针变量

int * p;//没有const修饰
const int * p;//const 放在*的左边做修饰
int const * p;//const 放在*的左边做修饰
int * const p;//const 放在*的右边做修饰

第二行和第三行实际是一样的。
我的理解是看const修饰的量,被其修饰的量是不能改变的,我们先来看第二行和第三行代码,*p不能改变,*p是变量值,也就是指针指向的那个变量的内容,它是不能够改变的,但p也就是地址,指针本身,是可以改变的。
第四行代码,const修饰p,地址,指针本身,是不能改变的,但指针指向的变量的内容是不能改变的
在这里插入图片描述

分享就到这了~

http://www.dtcms.com/wzjs/479578.html

相关文章:

  • 网站建设费用包括哪些方面郑州网站推广效果
  • 济南建设网官网首页谷歌优化方法
  • 西安市建网站中国互联网公司排名
  • 幼儿园网站静态模板引流推广平台有哪些
  • 西湖区住房和城乡建设局网站广州seo好找工作吗
  • 做条形码哪个网站比较好济南seo关键词排名工具
  • 长沙优化网站建设百度网站收录入口
  • 网站能搜索到推广app的平台
  • 需要做网站建设的公司dz论坛seo设置
  • 网站短链接怎么做的营销团队公司
  • 电子商务网站建设 课件上海seo优化培训机构
  • 铁威马 Nas 做网站市场营销主要学什么
  • 个人网站建设价格套餐东莞百度快速排名
  • 网站推广途径选择国家市场监督管理总局官网
  • 大连开发区商场seo如何挖掘关键词
  • 福田网站建设方案时事新闻最新
  • 网站页面设置百度app下载最新版本
  • 宁波企业免费建站南京百度提升优化
  • 郑州网站建设注意事项seo搜索引擎优化人才
  • 建设网站企业专业服务百度推广的五大优势
  • 餐厅网站建设方案轻松seo优化排名
  • 北京建设厅官方网站网站页面分析作业
  • 怎么查一个网站是什么程序做的中山网站seo
  • 建设银行临江市支行网站seo优化推广多少钱
  • 两学一做网站登录1688精品货源网站入口
  • 做卖号网站吗网站建设方案书范文
  • 怎么打开google网站电商网络营销
  • 商丘市做网站的公司怎样注册自己的网站
  • 网站建设制作需要多少钱长尾关键词搜索网站
  • 做html网站模板下载地址郴州seo外包