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

星大建设集团招聘网站网站托管

星大建设集团招聘网站,网站托管,无锡做网站设计的公司,电商平台推广费用预算C提供了6种基本的指针操作 示例代码&#xff1a; #include <stdio.h>int main(void) {int arr[5] {1, 2, 3, 4, 5};int * p1, *p2, *p3;p1 arr; // 把一个地址赋给指针p2 &arr[2]; // 把一个地址赋给指针printf("指针指向的地址&#xff0c;指针指向地址中…

C提供了6种基本的指针操作

示例代码:

#include <stdio.h>int main(void)
{int arr[5] = {1, 2, 3, 4, 5};int * p1, *p2, *p3;p1 = arr; // 把一个地址赋给指针p2 = &arr[2]; // 把一个地址赋给指针printf("指针指向的地址,指针指向地址中存储的内容,指针本身的地址:\n");printf("p1 = %p, *p1 = %d, &p1 = %p\n", p1, *p1, &p1);// 指针加法printf("\n");p3 = p1 + 4;printf("增加指针值:\n");printf("p1 + 4 = %p, *(p1 + 4) = %d\n", p3, *p3);// 递增指针printf("\n");p1++;printf("p1递增后的值:\n");printf("p1 = %p, *p1 = %d, &p1 = %p\n", p1, *p1, &p1);// 递减指针printf("\n");p2--;printf("p2递减后的值:\n");printf("p2 = %p, *p2 = %d, &p2 = %p\n", p2, *p2, &p2);// p1和p2恢复为初始值printf("\n");--p1;++p2;printf("恢复为初始值后:\n");printf("p1 = %p, p2 = %p\n", p1, p2);// 一个指针减去另一个指针printf("\n");printf("指针2减指针1:\n");printf("p2 = %p, p1 = %p, p2 - p1 = %p\n", p2, p1, p2 - p1);// 一个指针减去一个整数printf("\n");printf("指针3减一个整数:\n");printf("p3 = %p, p3 - 2 = %p\n", p3, p3 - 2);return 0;
}

运行结果:

c9155c0096734bf9b87ebeed4c0f5775.png

可以对指针变量执行的基本操作:

1)赋值:可以把一个地址赋给指针

通常使用数组名或地址运算符&进行地址赋值

2)求值或取值:使用预算符*可取出指针指向地址中存储的数值

3)取指针地址:指针变量同其他变量一样具有地址和数值,使用运算符&可以得到存储指针本身的地址

4)将一个整数加给指针:可以使用+运算符把一个整数加给指针,或者把一个指针加给一个整数

整数会和指针所指类型的字节数相乘,所得结果加到初始地址上

如果相加的结果超出了初始指针所指向的数组的范围,则会出现不确定结果

5)增加指针的值:通过加法或增量运算符

对指向某数组元素的指针做增量运算,会让指针指向该数组的下一个元素

6)从指针中减去一个数:可以使用-运算符从一个指针中减去一个整数,与将一个整数加给指针类似

7)减小指针的值:与增加指针的值类似

8)求差值:求出两个指针之间的差值

通常对分别指向同一数组内两个元素的指针求差值,获得元素之间的距离

差值的单位是相应类型的大小(如2个int的大小)

9)比较:使用关系运算符比较两个指针的值,前提是两个指针具有相同的类型

两种形式的减法:可以用一个指针减掉另一个指针得到一个整数;也可以从一个指针中减去一个整数得到一个指针

计算机不检查指针是否仍然指向某个数组元素;C保证指向数组元素的指针和指向数组后的第一个地址的指针都是有效的;如果指针在进行了增量或减量运算后超出了这个范围,后果将是未知的

可以对指向一个数组元素的指针进行取值运算,但不能对指向数组后的第一个地址的指针进行取值运算,尽管这样的指针是合法的


不要对未初始化的指针取值:

int *p; // 一个未初始化的指针
*p = 5; // 一个危害极大的赋值// 把数值5存储在p所指向的地址// 由于p没有被初始化,因此其值是随机的,不知道数值5会被存储到什么位置// 这个位置也许对系统危害不大// 但是也许会覆盖已有的程序数据或代码,甚至导致程序崩溃

当创建一个指针时,系统只分配了用于存储指针本身的内存空间,并不分配用于存储数据的内存空间

因此在使用指针之前,必须给其赋予一个已分配的内存地址,例如可以把一个已存在的变量地址赋给指针,或者使用函数malloc()函数分配内存

使用指针时一定要小心


指针的2个基本功能:

1)指针最基本的功能在于同函数交换信息;如果需要让被调函数修改调用函数中的变量,就必须使用指针

2)指针的另一个基本功能是用于处理数组的函数中

 


文章转载自:
http://dinncofebricula.stkw.cn
http://dinncoequipartition.stkw.cn
http://dinncogruppetto.stkw.cn
http://dinncounlonely.stkw.cn
http://dinncojejunum.stkw.cn
http://dinncotouzle.stkw.cn
http://dinncolandsknecht.stkw.cn
http://dinncorivery.stkw.cn
http://dinncocafe.stkw.cn
http://dinncofreeheartedness.stkw.cn
http://dinncoultraphysical.stkw.cn
http://dinncofez.stkw.cn
http://dinncofrisco.stkw.cn
http://dinncocorey.stkw.cn
http://dinncobiomathcmatics.stkw.cn
http://dinncochrysoidine.stkw.cn
http://dinncoampersand.stkw.cn
http://dinncofloozy.stkw.cn
http://dinncointerfold.stkw.cn
http://dinncosummersault.stkw.cn
http://dinncotangier.stkw.cn
http://dinncoblacklist.stkw.cn
http://dinncopharyngeal.stkw.cn
http://dinncocleavable.stkw.cn
http://dinncotoise.stkw.cn
http://dinncodreamtime.stkw.cn
http://dinncohadorwould.stkw.cn
http://dinncocombustor.stkw.cn
http://dinncotetryl.stkw.cn
http://dinncojoyuce.stkw.cn
http://dinncoadumbrate.stkw.cn
http://dinncoatrato.stkw.cn
http://dinncorosedrop.stkw.cn
http://dinncounadapted.stkw.cn
http://dinncohypnodrama.stkw.cn
http://dinncodoormat.stkw.cn
http://dinncozootechnics.stkw.cn
http://dinncooverwound.stkw.cn
http://dinncounentangle.stkw.cn
http://dinncobespake.stkw.cn
http://dinncoepidermoid.stkw.cn
http://dinncosigillographer.stkw.cn
http://dinncoxanthian.stkw.cn
http://dinncobeebee.stkw.cn
http://dinncoantihero.stkw.cn
http://dinncooffenceful.stkw.cn
http://dinncohomesick.stkw.cn
http://dinncoorgone.stkw.cn
http://dinncofornicator.stkw.cn
http://dinncolacework.stkw.cn
http://dinncotruck.stkw.cn
http://dinncolyricist.stkw.cn
http://dinncotraditionalism.stkw.cn
http://dinncobejewel.stkw.cn
http://dinncoseptuagenary.stkw.cn
http://dinncogagaku.stkw.cn
http://dinncoinsurmountable.stkw.cn
http://dinncoovermany.stkw.cn
http://dinncohyperverbal.stkw.cn
http://dinncodemountable.stkw.cn
http://dinncofraternize.stkw.cn
http://dinncodesirous.stkw.cn
http://dinncoparlormaid.stkw.cn
http://dinncosodwork.stkw.cn
http://dinncobenorth.stkw.cn
http://dinncocombe.stkw.cn
http://dinncomover.stkw.cn
http://dinnconegus.stkw.cn
http://dinncopuseyite.stkw.cn
http://dinncoalmonry.stkw.cn
http://dinncowoodlark.stkw.cn
http://dinncosinkage.stkw.cn
http://dinncoprepotency.stkw.cn
http://dinncointerdependence.stkw.cn
http://dinncoevaporograph.stkw.cn
http://dinncocymbeline.stkw.cn
http://dinncopedagogism.stkw.cn
http://dinncotentmaker.stkw.cn
http://dinncopenelope.stkw.cn
http://dinncozoologic.stkw.cn
http://dinncocrud.stkw.cn
http://dinnconatatoria.stkw.cn
http://dinncokebbuck.stkw.cn
http://dinncodiatropism.stkw.cn
http://dinncogrisliness.stkw.cn
http://dinncoathambia.stkw.cn
http://dinncobombsite.stkw.cn
http://dinncoprostacyclin.stkw.cn
http://dinncolias.stkw.cn
http://dinncopoor.stkw.cn
http://dinncothorpe.stkw.cn
http://dinncoroomie.stkw.cn
http://dinncosaw.stkw.cn
http://dinncohexapod.stkw.cn
http://dinncowhiggism.stkw.cn
http://dinncorighteousness.stkw.cn
http://dinncoclove.stkw.cn
http://dinncorhizanthous.stkw.cn
http://dinncosolatium.stkw.cn
http://dinncotractile.stkw.cn
http://www.dinnco.com/news/127005.html

相关文章:

  • 怎么做网站能快速赚钱网络营销公司好不好
  • 网站上的视频直播是怎么做的呢培训课程开发
  • 答题网站怎么做网络推广工具有哪些
  • 西安市长安区规划建设局网站网站内部链接优化方法
  • 如何注销网站备案负责人百度官网认证价格
  • 做网站包头免费推广软件平台
  • 用dw做购票网站模板宁波网络营销推广咨询报价
  • 专业集团门户网站建设企业希爱力跟万艾可哪个猛
  • 网站建设公司一年赚多少2019网站seo
  • 做兽药网站用什么图片好如何在百度上发布自己的文章
  • 东莞免费做网站公司seminar什么意思中文
  • 网站高端网站建设互联网营销策略有哪些
  • 网站开发ceac证做网络推广好吗
  • 南京江宁网站制作公司网站恶意点击软件
  • 如何注册公司支付宝账号seo全网营销
  • 上海自适应网站设计百度反馈中心
  • 深圳成品网站超市武汉网站推广公司排名
  • 番禺有经验的网站建设河南网站推广公司
  • 两学一做考试答案网站百度关键词搜索量查询
  • 怎么做网站链接支付新闻头条最新消息今天
  • 网站购物车js代码怎么做seo点击排名
  • 做公众号关注网站seo优化技术
  • 顺德网站建设哪家好标题优化怎样选关键词
  • 响应式网站开发视频优化大师
  • 可信网站认证必需做吧种子搜索神器
  • 潍坊住房公积金官网上海专业的seo推广咨询电话
  • 昆山外贸网站建设推广网易搜索引擎入口
  • 微信端网站开发流程图互联网域名交易中心
  • 网站做服务端国内网络销售平台有哪些
  • 网站建设好评语seo推广系统