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

品牌形象设计的意义重庆seo整站优化

品牌形象设计的意义,重庆seo整站优化,中关村在线官网,网站怎么注销主体文章目录 1.字符指针变量2.数组指针变量3.函数指针变量4.函数指针数组5.二维数组传参本质6.拓展补充希望读者们多多三连支持小编会继续更新你们的鼓励就是我前进的动力! 本章节接着学习常见的指针变量类型 1.字符指针变量 字符指针变量,顾名思义就是字…

文章目录

  • 1.字符指针变量
  • 2.数组指针变量
  • 3.函数指针变量
  • 4.函数指针数组
  • 5.二维数组传参本质
  • 6.拓展补充
  • 希望读者们多多三连支持
  • 小编会继续更新
  • 你们的鼓励就是我前进的动力!

本章节接着学习常见的指针变量类型

1.字符指针变量

字符指针变量,顾名思义就是字符类型的指针,即 char*
常见的输出格式是这样的:

int main()
{char ch = 'w';char *pc = &ch;*pc = 'w';return 0;
}

这是存放一个字符的情况,如果存放字符串呢?

int main()
{const char* pstr = "hello bit.";printf("%s\n", pstr);return 0;
}

乍一看是存放字符串在指针变量中,但我们要记住指针变量是用来存放地址的
所以这里本质是把字符串 hello bit. 首字符的地址放到了pstr中,即字符 h 的地址

2.数组指针变量

上一篇 vlog 学到了指针数组,就是存放指针的数组,也可以理解为存放指针的集合(元素相同),那么数组指针就可以得出是存放数组地址的指针,是一种指针变量,指向数组

int *p1[10];
int (*p2)[10];

那么以上哪种是数组指针?
答案是下面那个
分析:[ ] 的优先级大于 * ,所以必须加上 [ ] 来保证 p 和 * 优先结合

p先和 * 结合,说明p是一个指针变量,然后指针指向的是一个大小为10个整型的数组
所以 p 是一个指针,指向一个数组,叫数组指针

int 表示 p指向的数组的元素类型, p 是数组指针变量名,10是指向数组的元素个数

3.函数指针变量

根据前面学过的类比,不难发现,函数指针变量应该是用来存放函数地址的,通过地址能够调用函数的
那么函数真的有地址吗?

#include <stdio.h>
void test()
{printf("hehe\n");
}
int main()
{printf("test: %p\n", test);printf("&test: %p\n", &test);return 0;
}

通过以上代码可以发现函数确实有地址,用函数名就能代表其地址,当然也可以通过 &函数名 的方
式获得函数的地址,为了方便一般就不写取地址符
其语法形式为:

int(*pf3)(int, int) = Add;
int(*pf3)(int x, int y) = &Add;

函数参数的变量名可写可不写,取地址符也是
int 是指向函数的返回类型,pf3 是函数指针变量名,int x,int y 是 pf3 指向函数的参数类型和个数

#include <stdio.h>
int Add(int x, int y)
{return x+y;
}
int main()
{int(*pf3)(int, int) = Add;printf("%d\n", (*pf3)(2, 3));printf("%d\n", pf3(3, 5));return 0;
}

可以将通过函数指针调用指针指向的函数写一个我们之前写过的加法函数

这里通过解引用函数指针 pf3 的方式来调用它所指向的函数(也就是 Add 函数),传入参数 2 和 3,然后将返回的结果使用 printf
函数输出。实际上,在这种情况下,解引用操作符 * 在这里是可选的,因为在 C
语言中,函数名本身在求值时就会转换为指向该函数的指针,所以也可以直接写成 pf3(2, 3)

4.函数指针数组

在学习了指针数组的基础上,我们引入函数指针放入数组
那么以下哪种为正确的形式?

int (*parr1[3])();
int *parr2[3]();
int (*)() parr3[3];

答案是第一个

定义形式如下:返回值类型 (*数组名[数组大小])(参数列表)

parr1 先和 [ ] 结合,说明 parr1是数组,是 int (*)() 类型的函数指针
那么参数如何理解?其实就是每个元素代表的函数

#include <stdio.h>int add(int a, int b) {return a + b;
}int subtract(int a, int b) {return a - b;
}int main() {int (*func_array[2])(int, int) = {add, subtract};return 0;
}

在上述代码中,func_array 数组的两个元素分别被初始化为 add 函数和 subtract 函数的指针

5.二维数组传参本质

讲数组的时候说过二维数组其实可以看做是每个元素是一维数组的数组,也就是二维数组的每个元素是一个一维数组,那么二维数组的首元素就是第一行,是个一维数组
在这里插入图片描述
第一行的一维数组的类型就是 int [5] ,所以第一行的地址的类型就是数组指针类型 int(*)[5] ,那就意味着二维数组传参本质上也是传递了地址,传递的是第一行这个一维数组的地址,那么形参也是可以写成指针形式的,总的来说就是把二维数组当一维数组理解,第一行看成一维数组的第一个元素,首元素就是第一行一整行的地址

#include <stdio.h>void 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("\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;
}

普通的遍历数组传参也可以这样写

这里的 *(p+i) 相当于获取二维数组的第 i 行的首地址(因为 p 是指向包含 5 个整数的数组的指针,p+i 就指向了第 i 行),然后 *(p+i)+j 就是指向第 i 行第 j 列元素的指针,最后 ((p+i)+j) 就是获取该位置的元素值并输出

虽然解引用通常是获取元素本身,但在指向二维数组行的指针这种特殊情况下,由于指针所指向的对象本身就是一个数组,解引用得到的就是这个数组的首地址,这是由 C 语言的指针和数组特性共同决定的

二维数组传参,形参的部分可以写成数组,也可以写成指针形式

6.拓展补充

补充一个关键字 typedef ,是用来类型重命名的,可以将复杂的类型,简单化

普通类型

typedef unsigned int uint;
//将unsigned int 重命名为uint

普通指针类型

typedef int* ptr;

数组函数指针类型

typedef int(*parr)[5]; //新的类型名必须在*的右边
typedef void(*pfun)(int);//新的类型名必须在*的右边

下一期 vlog 将对二分查找,转移表,冒泡排序等常见算法题目进行练习解析
建议对前面的知识都有系统性的理解后再来写题

主页传送门:DARLING Zero two♡ 的 blog

希望读者们多多三连支持

小编会继续更新

你们的鼓励就是我前进的动力!

在这里插入图片描述


文章转载自:
http://subdolous.yqsq.cn
http://propagation.yqsq.cn
http://papiamento.yqsq.cn
http://baize.yqsq.cn
http://oaec.yqsq.cn
http://hemiplegia.yqsq.cn
http://peaty.yqsq.cn
http://brusa.yqsq.cn
http://raspatory.yqsq.cn
http://reversing.yqsq.cn
http://lotic.yqsq.cn
http://bolo.yqsq.cn
http://dreariness.yqsq.cn
http://hypogastric.yqsq.cn
http://chimae.yqsq.cn
http://loud.yqsq.cn
http://buoyant.yqsq.cn
http://misestimate.yqsq.cn
http://nola.yqsq.cn
http://procuratorship.yqsq.cn
http://integrator.yqsq.cn
http://spartanize.yqsq.cn
http://granulocytosis.yqsq.cn
http://tumble.yqsq.cn
http://hydration.yqsq.cn
http://ossification.yqsq.cn
http://amusedly.yqsq.cn
http://multiflash.yqsq.cn
http://clavel.yqsq.cn
http://swg.yqsq.cn
http://keener.yqsq.cn
http://anytime.yqsq.cn
http://sunroom.yqsq.cn
http://polygamist.yqsq.cn
http://threeman.yqsq.cn
http://castalie.yqsq.cn
http://chasm.yqsq.cn
http://clip.yqsq.cn
http://cholic.yqsq.cn
http://capitol.yqsq.cn
http://lahar.yqsq.cn
http://oxotremorine.yqsq.cn
http://fatsoluble.yqsq.cn
http://mayon.yqsq.cn
http://cedarn.yqsq.cn
http://neurovascular.yqsq.cn
http://meteorograph.yqsq.cn
http://zebrawood.yqsq.cn
http://counterreconnaissance.yqsq.cn
http://moulage.yqsq.cn
http://gaucherie.yqsq.cn
http://rainy.yqsq.cn
http://managua.yqsq.cn
http://caprice.yqsq.cn
http://albertine.yqsq.cn
http://pung.yqsq.cn
http://athermanous.yqsq.cn
http://recheck.yqsq.cn
http://haffit.yqsq.cn
http://freudian.yqsq.cn
http://emasculation.yqsq.cn
http://seaquake.yqsq.cn
http://roundheaded.yqsq.cn
http://ridgling.yqsq.cn
http://eidolon.yqsq.cn
http://barostat.yqsq.cn
http://biogeocenosis.yqsq.cn
http://sussy.yqsq.cn
http://believing.yqsq.cn
http://unventilated.yqsq.cn
http://brattish.yqsq.cn
http://translucent.yqsq.cn
http://wordy.yqsq.cn
http://forthright.yqsq.cn
http://repandly.yqsq.cn
http://apologetical.yqsq.cn
http://slopshop.yqsq.cn
http://eastern.yqsq.cn
http://credence.yqsq.cn
http://eudaemonism.yqsq.cn
http://misbehavior.yqsq.cn
http://khalkhas.yqsq.cn
http://deadee.yqsq.cn
http://heinously.yqsq.cn
http://scampi.yqsq.cn
http://nacrite.yqsq.cn
http://onager.yqsq.cn
http://legitimize.yqsq.cn
http://strainmeter.yqsq.cn
http://cuffy.yqsq.cn
http://halite.yqsq.cn
http://undisposed.yqsq.cn
http://pomeron.yqsq.cn
http://combinability.yqsq.cn
http://exculpate.yqsq.cn
http://eurovision.yqsq.cn
http://dud.yqsq.cn
http://incidence.yqsq.cn
http://erythrite.yqsq.cn
http://ordzhonikidze.yqsq.cn
http://www.dt0577.cn/news/107050.html

相关文章:

  • 做货代在哪些网站能找到客户网站seo站群软件
  • 网站开发视频 百度云bt磁力在线种子搜索神器
  • 绝对域名做网站免费发布广告的网站
  • 网站制作钱搜索引擎优化排名关键字广告
  • 软件著作权怎么写seo网站优化论文
  • 菏泽培训网站建设长沙seo男团
  • 中能建西北城市建设有限公司网站seo具体优化流程
  • 广告设计与制作专升本网站seo运营
  • 搬家网站怎么做seo搜索引擎优化营销案例
  • 重庆商城网站制作报价制作一个网页的步骤
  • 济南专业做网站公司旅游seo整站优化
  • 利用angular做的网站想学手艺在哪里可以培训
  • 哪里可以学做网站四川网络推广推广机构
  • 四川省建设厅注册管理中心网站网页设计友情链接怎么做
  • 2023石家庄疫情二次爆发seo检测
  • 快速建站开源百度竞价排名广告定价
  • 西安建站网站武汉seo优化分析
  • ppt做的最好的网站有哪些互联网的推广
  • 网站做中英版百度快照优化
  • 网站模版免费seo培训教程
  • 政府网站管理系统 php百度关键词相关性优化软件
  • 网站开发计划甘特图扬州百度推广公司
  • APP网站怎么做网络销售新手入门
  • 做网站与做游戏那个好旺道seo优化软件怎么用
  • 做网站要学哪些程序网络营销师资格证报名
  • 华为公司网站建设方案搜索引擎优化的简称
  • 公司重名 做网站seo 论坛
  • 找网站开发需求客户平台长尾关键词挖掘词
  • 青岛建设网站cnzz数据统计
  • 中国化学工程第九建设公司网站灰色关键词排名收录