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

网站源码上传完后怎么做百度认证怎么认证

网站源码上传完后怎么做,百度认证怎么认证,wordpress jetpack插件,小程序制作方案1.回调函数 回调函数就是一个通过函数指针调用的函数。 如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数 时,被调用的函数就是回调函数。回调函数不是由该函数的实现方直接调用&#xff0…

1.回调函数

回调函数就是一个通过函数指针调用的函数。
如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数
时,被调用的函数就是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。我们在上一讲的calc函数就是回调函数,因为我们在计算器的模拟实现中有些代码时重复的,所以我们将其包装成一个函数,让其每次使用时进行调用。

2.qsort排序

我们在之前学过冒泡排序,但是我们的冒泡排序只能排序整型数据,而这个qsort可以排序任意函数。

1.qsort的参数

有四个参数,第一个参数是指向需要排序的指针也就是数组的首元素地址,第二个参数是需要排序元素的个数,第三个参数是每个元素的大小,最有一个参数是我们给定一个排序方式,且这个排序方式的返回值为大于0、小于0,或等于0.

 2.qsort头文件

qsort的头文件为<stdlib.h>

3.qsort排序演示

#include<stdio.h>
#include<stdlib.h>
int sort(const void* p1, const void* p2)
{return *(int*)p1 - *(int*)p2;
}void print(int* pt, int num)
{for (int i = 0; i < num; i++){printf("%d ", pt[i]);}printf("\n");
}
int main()
{int arr[5] = { 5,3,4,1,2 };size_t num = sizeof(arr) / sizeof(arr[0]);print(arr, num);qsort(arr, num, sizeof(arr[0]), sort);print(arr,num);return 0;
}

我们的sort函数就是我们给定的排序规则,void*的指针不能直接解引用,所以我们将其强制类型转换为int* 这样我们就可以找到数组的元素了,p1>p2返回大于0的值,p1=p2返回0,p1<p2返回小于0的值。为了方便观察我们在排序前和排序后都对arr进行打印,究竟排序成功了吗?

我们来看看结果:

这个地方我们是以升序排序的,那怎么降序排序呢?其实只要在我们给定的规则上改动即可,我们的sort函数的指针位置调换即可。

我们再次运行试试看:

 因为qsort库函数的参数是viod*的指针,所以我们可以传任意指针。那么如果我们想排序结构体是否可以用qsort排序呢?

4.qosrt排序结构体

在这之前我们先来学习一个库函数strcmp,他是用来专门比较字符串的,比较规则是字符所对应的ASCLL码值进行比较的。

它有两个参数都是char*,所以我们只需要给它喜欢传参即可,这个指针也就指向要比较字符串的指针,一般为我们用其数组名。const作为它的参数的原因是为了增加代码的安全性,我们只是为了比较,并不想改变字符串的内容,所以我们加上const,这样我们如果写错了要改变字符串的内容,编译器就会报错。它的头文件为<string.h>。

它的返回值也刚刚好满足qsort的第四参数的规则。

 演示如下:

struct Stu
{char name[15];int age;
};
int sort(const void* p1, const void* p2)
{return strcmp( (char*) p1,  (char*) p2);
}
void print(struct Stu *pt,size_t num)
{for (int i = 0; i < num; i++){printf("%s %d ", pt->name, pt->age);pt++;}printf("\n");}int main()
{struct Stu s[] = { {"zhang",13},{"chen",19},{"qing",17} };size_t num = sizeof(s) / sizeof(s[0]);print(&s, num);qsort(s, num, sizeof(s[0]), sort);print(&s,num);return 0;
}

结构体指针是不需要解引用的,直接->就可以找到对应成员。我们为了好观察排序前排序后都进行打印。

结果如下:

 我们可以看到确实是按照ASCLL码值的大小来排序的,z的ASCLL码值大于c、q的ASCLL码值。

我们可以思考下怎样将冒泡排序进行改进,让其能够排序任意类型的数据。

谢谢
http://www.yayakq.cn/news/201398/

相关文章:

  • 电子网站建设价格网上注册公司需要什么材料和手续
  • 百度抓取不到网站优质专业建设方案
  • 网站的标题可以改吗神箭手wordpress
  • 爱站网爱情电影网怎样才能创建网站
  • 北京手机网站建设报价网站开发相关技术发展
  • 烟台网站建设技术支持东莞网络推广哪家公司好
  • 网站代码是多少贵州网站备案查询
  • 网站建设和网站搭建哪个好无锡本地模板网站建设产品
  • 江华网站建设飞享套餐
  • 广州网站建设公司哪家比较好冰雪蜜城店加盟费多少
  • 建设部监理工程师报名网站什么是产品网络推广
  • 电子商务网站建设大作业内蒙古建设兵团网站
  • 长治网站制作的流程江门网站制作服务
  • 阿里云网站域名证书沈阳网站制作建设
  • 长春做网站公司长春seo公司wordpress内容主题
  • 企业网站如何做自然搜索全网营销公司有哪些
  • 保定做网站百度推广亚马逊跨境电商个人开店流程
  • 手机版网站怎样做推广国内外网站
  • 做网站 网络科技公司内蒙古网站优化
  • mysql asp网站开发软件开发项目文档怎么写
  • 大庆网站建设优化做百度词条需要哪些网站
  • 男女做暧暧网站怎么创建一个网站卖东西
  • 中山建网站费用多少哪里的网站可以做围棋死活题
  • 学院网站群建设的目标网站设计机构排行榜
  • 安卓游戏模板下载网站校园网站建设培训简讯
  • 用wordpress仿a站ix空间搭建wordpress
  • 重慶网站开发如何联系百度推广
  • 成都智能建站模板微信公众号平台怎么开发
  • 手表网站app网站显示建设中页面
  • 大连网站建设哪家专业厦门城乡住房建设厅网站