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

中国建设银行个人网上银行网站人工智能培训机构排名

中国建设银行个人网上银行网站,人工智能培训机构排名,外贸网站做哪些语言,上海物流公司网站建设指针是C语言中的一个重要概念,也是C语言的一个重要特色;使用指针,可以使程序简洁、紧凑、高效。不掌握指针,就没有掌握C语言的精华。 目录 一、定义 1.1地址 1.2指针 1.3指针变量 1.4指针和指针变量的区别 二、使用指针变量…

指针是C语言中的一个重要概念,也是C语言的一个重要特色;使用指针,可以使程序简洁、紧凑、高效。不掌握指针,就没有掌握C语言的精华。

目录

一、定义

1.1地址

1.2指针

1.3指针变量

1.4指针和指针变量的区别

二、使用指针变量的实例

2.1程序分析

2.2带(*)号的解释

2.3引用指针变量的3种情况


我们先来看一副图,带着你的疑问往下看。

变量i,j,k,j_pointer大小均为4个字节(不同编译器和操作系统大小可能不一样)

计算机内存的最小单位是:位(Bit),基本单位是:字节(Byte),1 byte = 8 bit

一、定义

1.1地址

在内存区,每一个字节都有一个编号,这个编号就是“地址”,它相当于学生宿舍的房间号,例如“101”房间,每个房间里面可以居住学生,即每个地址标注的内存单元(字节)可以存放数据,相当于房间中有8张床,对应于1个字节(byte)有8位(bit)。

注意:不同类型的数据分配的存储单元大小(字节数)存储方式(整数以补码形式存放,实数以指数形式存放)是不同的。C语言中的地址包括位置信息(编号)和类型信息,或者说是“带类型的地址”。

int a;	//定义整型变量a
&a;		//得到变量a的地址,或者说是“整型变量a的地址”

&:取地址运算符

1.2指针

因为可以通过地址找到对应的存储单元,所以将这个“地址”形象化的称之为“指针”,意思通过它就能指向所需要的内存单元。

访问变量存储单元的方式有两种

①直接访问:在编译时,系统已经建立了变量名和地址的对应表,因此通过变量名就能访问到相应地址对应的存储单元。

②间接访问:即将变量的地址存放在“另一变量”中,然后通过访问“另一变量”找到原变量的地址,从而访问相应的存储单元。即将变量 “i” 的地址存放在变量 “i_pointer” 中,通过访问变量 “i_pointer” 找到变量 “i” 的地址。

1.3指针变量

专门用来存放“变量地址(指针)”的变量即称之为“指针变量”,也可以称为地址变量;在C语言中,可以定义整型,浮点型,字符型等指针变量。

定义方法为:类型名 * 指针变量名

int* a_pointer;
float* b_pointer;
char* c_pointer;

也可以在定义的同时进行初始化:

int a;					//整型变量
int* a_pointer = &a;	//整形指针变量float b;				//浮点型变量
float* b_pointer = &b;	//浮点型指针变量char c;					//字符型变量
char* c_pointer = &c;	//字符型指针变量

在定义时,必须指定该指针变量的指向的变量的类型。

1.4指针和指针变量的区别

通过上面的了解,我们再来看这幅图,我们可以知道,变量 i 的指针(地址)是1000,变量 j 的指针是1004,变量 k 的指针是1008,而不能说变量 i 的指针变量是1000。变量 j_pointer 存放的是变量 j 的地址,所以 j_pointer 是一个指针变量。

指针是一个具体的地址,而指针变量是存放地址的变量;

指针是具体的,指针变量在未指向实际存储地址时,是不确定的。

二、使用指针变量的实例

#include<stdio.h>
int main()
{int a = 12, b = 21;	//定义两个整型变量并初始化int* p1, * p2;	//定义两个指向整型的指针变量p1 = &a;		//赋予a的地址p2 = &b;		//赋予b的地址printf("a = %d, b = %d\n", a, b);	//输出a,b的值printf("*p1 = %d, *p2 = %d\n", *p1, *p2);	//输出两个指针变量的值所指向的变量值return 0;
}

2.1程序分析

第5行定义了两个指针变量 p1 和 p2,但此时他们并未指向任何一个变量,只是两个指针变量,第6,7行使他们指向整型变量 a 和 b;第8行输出变量 a 和 b 的值,第9行输出 *p1 和 *p2 的值,(*)表示指向,也就是变量 a 和 b。

(*):指针运算符(间接访问运算符)

2.2带(*)号的解释

程序中出现了两处*p1和*p2,分别在第5行和第9行,二者意义不同;

第5行的 *p1 和 *p2 表示定义两个指针变量 p1 和 p2,他们前面的(*)仅表示该变量是指针变量,第9行的 *p1 和 *p2 表示指针变量 p1 和 p2 所指向的变量,即 a 和 b。

注意:指针变量是p1和p2,而不是*p1和*p2,所以第6,7行不能写成

*p1 = &a;
*p2 = &b;

因为变量 a 的地址是赋给指针变量 p1,而不是赋给指针变量所指向的变量 *p1(即变量a)。

2.3引用指针变量的3种情况

①给指针变量赋值

p = &a;    //把a的地址赋给指针变量p

②引用指针变量指向的变量

printf("%d", *p);    //以整数形式输出指针变量p所指向的变量的值

③引用指针变量的值

printf("%p", p);    //以16进制输出指针变量的值,即地址

指针的概念比较复杂,使用也比较灵活。

http://www.shuangfujiaoyu.com/news/42284.html

相关文章:

  • 微网站如何制作爱站网关键词工具
  • ps cs6做网站框架的插件百度seo优化多少钱
  • 外贸网站 源码搜索引擎优化技巧
  • 网站设计怎么做有效的seo是做什么工作内容
  • 做一个产品网站要多少钱线上销售怎么做
  • 网站内容设计黑帽seo排名优化
  • 扬中市新闻网珠海优化seo
  • 长春网站建设v1网络运营培训班
  • 网站怎么做关键词优化网站外贸推广
  • 网站搭建后怎么操作哪里可以代写软文
  • 做网站需要视频衔接怎么做宁波关键词优化品牌
  • 桐庐网站建设百度知道官网首页登录入口
  • 观澜小学网站建设买卖平台
  • 哪里找免费网站北京网站优化哪家好
  • 哪个网站做任务钱给得多酒店机票搜索量暴涨
  • 厦门网页定制seo搜索引擎优化岗位要求
  • 青岛网站建设 大公司百度知道合伙人答题兼职
  • 网站的发布方案有哪些优化seo是什么意思
  • 昆山 网站建设 企炬app推广工作是做什么的
  • 江苏优化网站公司哪家好美国新冠疫情最新消息
  • 做网站开发的有外快嘛江苏网页定制
  • 珠海 网站建设宁波seo教学
  • 电子商务 独立网站制作企业品牌类网站有哪些
  • thinkphp 门户网站网站收录查询平台
  • 河南郑州seo优化器
  • 网站开发公司职位如何开发自己的小程序
  • 网站的推广运营seo短视频网页入口
  • 网站建设阶段性工作重点seo计费系统源码
  • 钢琴网站建设原则徐州seo招聘
  • 动态网站开发语言的优势与不足苏州seo排名优化课程