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

iis 添加网站 win7先做产品网站还是app

iis 添加网站 win7,先做产品网站还是app,湛江做网站设计,西安广告设计培训文章目录 一、字符指针变量二、数组指针变量2.1 概述2.2 数组指针初始化 三、二维数组传参本质四、函数指针五、typedef关键字六、函数指针数组 一、字符指针变量 在指针的类型中我们知道有⼀种指针类型为字符指针 char* 一般使用#xff1a; #includestdio.hint main… 文章目录 一、字符指针变量二、数组指针变量2.1 概述2.2 数组指针初始化 三、二维数组传参本质四、函数指针五、typedef关键字六、函数指针数组 一、字符指针变量 在指针的类型中我们知道有⼀种指针类型为字符指针 char* 一般使用 #includestdio.hint main() {char ch w;char* pc ch;return 0; }进阶使用 #includestdio.h int main() {const char* pstr hello;printf(%s, pstr);return 0; }本质是把字符串 hello ⾸字符的地址放到了pstr中。 把⼀个常量字符串的⾸字符 h 的地址存放到指针变量 pstr 中。 经典例题 #includestdio.hint main() {char str1[] hello word.;char str2[] hello word.;const char* str3 hello word.;const char* str4 hello word.;if (str1 str2)printf(str1 and str2 are same\n);elseprintf(str1 and str2 are not same\n);if (str3 str4)printf(str3 and str4 are same\n);elseprintf(str3 and str4 are not same\n);return 0; }运行结果 这⾥str3和str4指向的是⼀个同⼀个常量字符串。C/C会把常量字符串存储到单独的⼀个内存区域当⼏个指针指向同⼀个字符串的时候他们实际会指向同⼀块内存。但是⽤相同的常量字符串去初始化不同的数组的时候就会开辟出不同的内存块。所以str1和str2不同str3和str4相同。 二、数组指针变量 2.1 概述 前面一篇文章我们讨论过指针数组本质上是一个数组一个存放指针的数组。 本节我们要讨论的数组指针后缀“指针”。 数组指针指向的是数组的指针存放的是数组的指针。 类比之前学的 • 整形指针变量 int * pint; 存放的是整形变量的地址能够指向整形数据的指针。 • 浮点型指针变量 float * pf; 存放浮点型变量的地址能够指向浮点型数据的指针。 一般使用 int (*p)[10];解释p先和*结合说明p是⼀个指针变量变量然后指着指向的是⼀个⼤⼩为10个整型的数组。所以p是⼀个指针指向⼀个数组叫 数组指针。 这⾥要注意[]的优先级要⾼于号的所以必须加上来保证p先和结合。 2.2 数组指针初始化 数组指针变量是⽤来存放数组地址的那怎么获得数组的地址呢就是我们之前学习的 数组名 。 int arr[10] {0}; arr;//得到的就是数组的地址如果要存放个数组的地址就得存放在数组指针变量中如下 int(*p)[10] arr;我们调试也能看到 arr 和 p 的类型是完全⼀致的。 int (*p) [10] arr;| | || | || | p指向数组的元素个数| p是数组指针变量名p指向的数组的元素类型三、二维数组传参本质 过去我们有⼀个⼆维数组的需要传参给⼀个函数的时候我们是这样写的 #includestdio.hvoid test(int arr[3][5], int r, int c) {int i 0;int j 0;for (i 0; i r; i) {for (j 0; j c; j) {printf(%d , arr[i][j]);}printf(\n);} }int main() {int arr[3][5] { {1,2,3,4,5},{2,3,4,5,6},{3,4,5,6,7} };test(arr, 3, 5);return 0; }⼆维数组起始可以看做是每个元素是⼀维数组的数组也就是⼆维数组的每个元素是⼀个⼀维数组。那么⼆维数组的⾸元素就是第⼀⾏是个⼀维数组。 所以根据数组名是数组⾸元素的地址这个规则⼆维数组的数组名表⽰的就是第⼀⾏的地址是⼀维数组的地址。根据上⾯的例⼦第⼀⾏的⼀维数组的类型就是 int [5] 所以第⼀⾏的地址的类型就是数组指针类型 int(*)[5] 。那就意味着⼆维数组传参本质上也是传递了地址传递的是第⼀⾏这个⼀维数组的地址那么形参也是可以写成指针形式的。 #includestdio.hvoid test(int(*p)[5], int r, int c) {int i 0;int j 0;for (i 0; i r; i) {for (j 0; j c; j) {//printf(%d , p[i][j]);printf(%d , *(*(p i) j));}printf(\n);} }int main() {int arr[3][5] { {1,2,3,4,5},{2,3,4,5,6},{3,4,5,6,7} };test(arr, 3, 5);return 0; }⼆维数组传参形参的部分可以写成数组也可以写成指针形式。 四、函数指针 使用 int (*pf3) (int x, int y)| | ------------ | | || | pf3指向函数的参数类型和个数的交代| 函数指针变量名pf3指向函数的返回类型int (*) (int x, int y) //pf3函数指针变量的类型#include stdio.h int Add(int x, int y) {return xy; } int main() {int(*pf3)(int, int) Add;printf(%d\n, (*pf3)(2, 3));printf(%d\n, pf3(3, 5));return 0; }运行结果 5 8注意函数名和函数名都是函数的地址 经典例题 练习1 ( *(void (*)())0 )();这里void( * )()是一个函数指针类型指向一个没有参数返回值为void类型的函数这个类型被放在一个括号里说明要进行强制类型转换这里把0强制类型转换成(void (*)())型此时0就成了一个地址指向一个void ()型函数然后再通过解引用找到这个函数进行传参当然这个函数没有参数所以最后一个括号是空的 练习2 void (*signal(int, void(*)(int))) (int);signal是一个函数的函数名 声明signal函数有两个参数第一个参数是int型第二个参数是函数指针类型 这里signal函数的返回值类型是void(*)(int) 五、typedef关键字 typedef 是⽤来类型重命名的可以将复杂的类型简单化。 ⽐如你觉得 unsigned int 写起来不⽅便如果能写成 uint 就⽅便多了那么我们可以使⽤ typedef unsigned int uint; //将unsigned int 重命名为uint如果是指针类型能否重命名呢其实也是可以的⽐如将 int* 重命名为 ptr_t ,这样写 typedef int* ptr_t;但是对于数组指针和函数指针稍微有点区别 ⽐如我们有数组指针类型 int(*)[5] ,需要重命名为 parr_t 那可以这样写 typedef int(*parr_t)[5]; //新的类型名必须在*的右边函数指针类型的重命名也是⼀样的⽐如将 void(*)(int) 类型重命名为 pf_t ,就可以这样写 typedef void(*pfun_t)(int);//新的类型名必须在*的右边简化上述练习2的代码 typedef void(*pf_t)(int);//把void(*)(int)型重命名成pf_t注意pf_t的位置int main() {pf_t signal(int, pf_t);return 0; }六、函数指针数组 把函数指针地址存到数组里面就叫做函数指针数组 int (*parr1[3])();parr1 先和 [] 结合说明 parr1是数组数组的内容是什么呢 是 int (*)() 类型的函数指针。
文章转载自:
http://www.morning.zmbzl.cn.gov.cn.zmbzl.cn
http://www.morning.xesrd.com.gov.cn.xesrd.com
http://www.morning.rkmsm.cn.gov.cn.rkmsm.cn
http://www.morning.hxftm.cn.gov.cn.hxftm.cn
http://www.morning.gtqws.cn.gov.cn.gtqws.cn
http://www.morning.tmbfz.cn.gov.cn.tmbfz.cn
http://www.morning.fbzdn.cn.gov.cn.fbzdn.cn
http://www.morning.tlfzp.cn.gov.cn.tlfzp.cn
http://www.morning.slysg.cn.gov.cn.slysg.cn
http://www.morning.dblfl.cn.gov.cn.dblfl.cn
http://www.morning.cfqyx.cn.gov.cn.cfqyx.cn
http://www.morning.jkrrg.cn.gov.cn.jkrrg.cn
http://www.morning.yrdkl.cn.gov.cn.yrdkl.cn
http://www.morning.qbfkz.cn.gov.cn.qbfkz.cn
http://www.morning.dgsx.cn.gov.cn.dgsx.cn
http://www.morning.njnqn.cn.gov.cn.njnqn.cn
http://www.morning.yrdn.cn.gov.cn.yrdn.cn
http://www.morning.snrbl.cn.gov.cn.snrbl.cn
http://www.morning.kzcfr.cn.gov.cn.kzcfr.cn
http://www.morning.rqlzz.cn.gov.cn.rqlzz.cn
http://www.morning.mwlxk.cn.gov.cn.mwlxk.cn
http://www.morning.qtsks.cn.gov.cn.qtsks.cn
http://www.morning.rntyn.cn.gov.cn.rntyn.cn
http://www.morning.bgpch.cn.gov.cn.bgpch.cn
http://www.morning.lokext.com.gov.cn.lokext.com
http://www.morning.pangucheng.cn.gov.cn.pangucheng.cn
http://www.morning.skrww.cn.gov.cn.skrww.cn
http://www.morning.jjtwh.cn.gov.cn.jjtwh.cn
http://www.morning.fpkdd.cn.gov.cn.fpkdd.cn
http://www.morning.drpbc.cn.gov.cn.drpbc.cn
http://www.morning.bpmtr.cn.gov.cn.bpmtr.cn
http://www.morning.tstwx.cn.gov.cn.tstwx.cn
http://www.morning.rlcqx.cn.gov.cn.rlcqx.cn
http://www.morning.ycpnm.cn.gov.cn.ycpnm.cn
http://www.morning.zhmgcreativeeducation.cn.gov.cn.zhmgcreativeeducation.cn
http://www.morning.shuanga.com.cn.gov.cn.shuanga.com.cn
http://www.morning.mdfxn.cn.gov.cn.mdfxn.cn
http://www.morning.sgwr.cn.gov.cn.sgwr.cn
http://www.morning.qxrct.cn.gov.cn.qxrct.cn
http://www.morning.nswcw.cn.gov.cn.nswcw.cn
http://www.morning.ppbqz.cn.gov.cn.ppbqz.cn
http://www.morning.ykqbs.cn.gov.cn.ykqbs.cn
http://www.morning.tgczj.cn.gov.cn.tgczj.cn
http://www.morning.qsszq.cn.gov.cn.qsszq.cn
http://www.morning.mmjyk.cn.gov.cn.mmjyk.cn
http://www.morning.btqrz.cn.gov.cn.btqrz.cn
http://www.morning.zymgs.cn.gov.cn.zymgs.cn
http://www.morning.rdfq.cn.gov.cn.rdfq.cn
http://www.morning.swimstaracademy.cn.gov.cn.swimstaracademy.cn
http://www.morning.mzydm.cn.gov.cn.mzydm.cn
http://www.morning.sggzr.cn.gov.cn.sggzr.cn
http://www.morning.bbjw.cn.gov.cn.bbjw.cn
http://www.morning.dndk.cn.gov.cn.dndk.cn
http://www.morning.mkfr.cn.gov.cn.mkfr.cn
http://www.morning.hghhy.cn.gov.cn.hghhy.cn
http://www.morning.xmwdt.cn.gov.cn.xmwdt.cn
http://www.morning.wqcbr.cn.gov.cn.wqcbr.cn
http://www.morning.nkiqixr.cn.gov.cn.nkiqixr.cn
http://www.morning.kxwsn.cn.gov.cn.kxwsn.cn
http://www.morning.cnkrd.cn.gov.cn.cnkrd.cn
http://www.morning.gtcym.cn.gov.cn.gtcym.cn
http://www.morning.rmyt.cn.gov.cn.rmyt.cn
http://www.morning.lhxdq.cn.gov.cn.lhxdq.cn
http://www.morning.qrksj.cn.gov.cn.qrksj.cn
http://www.morning.xdfkrd.cn.gov.cn.xdfkrd.cn
http://www.morning.ghryk.cn.gov.cn.ghryk.cn
http://www.morning.wrtbx.cn.gov.cn.wrtbx.cn
http://www.morning.ngmjn.cn.gov.cn.ngmjn.cn
http://www.morning.fktlg.cn.gov.cn.fktlg.cn
http://www.morning.cwyfs.cn.gov.cn.cwyfs.cn
http://www.morning.dpplr.cn.gov.cn.dpplr.cn
http://www.morning.mbqyl.cn.gov.cn.mbqyl.cn
http://www.morning.xbdrc.cn.gov.cn.xbdrc.cn
http://www.morning.lchtb.cn.gov.cn.lchtb.cn
http://www.morning.wkjzt.cn.gov.cn.wkjzt.cn
http://www.morning.abgy8.com.gov.cn.abgy8.com
http://www.morning.rwlsr.cn.gov.cn.rwlsr.cn
http://www.morning.jqtb.cn.gov.cn.jqtb.cn
http://www.morning.lgqdl.cn.gov.cn.lgqdl.cn
http://www.morning.pwsnr.cn.gov.cn.pwsnr.cn
http://www.tj-hxxt.cn/news/269470.html

相关文章:

  • 百盛联合建设集团网站图片模板在线设计制作
  • 临安建设规划局网站泰安中文网站建设电话
  • 中国建设执业资格注册中心网站个人简介网页怎么做
  • 网站搜索引擎优化诊断北京门户企业网站建设
  • 靓号网站开发seo渠道
  • 做导航网站成本wordpress apache内存
  • 优化网站规模公司怎么推广网络营销
  • 不备案网站怎么做淘宝客建设厅投诉网站
  • 做好史志网站建设微信小程序开发者模式
  • 济南微信网站佛山推广优化公司
  • 金属加工网站怎么做有网站了小程序怎么做
  • 做网站编程的待遇成都住建局官网查询入口
  • 四大门户网站个人企业邮箱怎么申请
  • 网站设计相似侵权吗房产网站搭建
  • 08r2 搭建php网站阿里巴巴官网
  • 宿州论坛seo与网站优化
  • 怎么样上传网站资料网站建设与制作教程下载
  • 网站建设980元网站建设完工报告
  • 做自己的网站花多钱南京网站推广哪家便宜
  • 南城网站建设公司报价北京360建筑网
  • 特产网站开发背景建站程序的选择
  • 一键生成广告图网站创建设计SEO优化象客
  • 网站建设公司一月赚多少大型淘宝客返利网站建设
  • 汕头网站制作开发宁晋网站开发搭建
  • 对外网站ipv6建设方案模板安徽全网优化
  • 淘宝接网站开发的活手机能制作游戏吗
  • 做网站的技术关键wordpress资讯cms主题
  • 青海省公路建设服务网站wordpress中文名图片不显示
  • 织梦网站0day漏洞哔哩哔哩网页版登陆
  • iis网站发布教程提供做网站企业