int bin_ find(int (*p) [22] ,int num) ]{ int len = sizeof (*p) /sizeof((*p) [0]) ;解释
时间: 2023-08-15 11:08:55 浏览: 43
这段代码定义了一个名为 `bin_find` 的函数,它接受两个参数:一个指向二维数组的指针 `p`,和一个待查找的整数 `num`。函数返回值类型为 `int`。
这里的 `int (*p)[22]` 表示一个指向具有 22 列的整型二维数组的指针。需要注意的是,这里的 `22` 是一个固定的常量,它表示二维数组的列数。所以,这个函数只适用于列数为 22 的二维数组。
函数体中的代码先计算二维数组的长度 `len`。这里的 `sizeof(*p)` 表示指针所指向的二维数组的总长度,`sizeof((*p)[0])` 表示二维数组中第一行的长度。因为二维数组是按行存储的,所以这里用第一行的长度来计算整个数组的长度。最后,将总长度除以第一行的长度,即可得到二维数组的行数。
接下来,函数使用二分查找算法在二维数组中查找目标数字。具体实现过程就不展开了,不过需要注意的是,这里的二分查找算法是基于二维数组的一维展开来实现的,需要将二维数组转换为一维数组来进行查找。
相关问题
p=(int*)malloc(n*sizeof(int)
这段代码是一段动态分配内存的代码。在C语言中,malloc()函数可以用来动态地分配内存空间,以便在程序执行过程中使用。
根据代码中的语句p=(int*)malloc(n*sizeof(int)),变量p被声明为一个指向int类型的指针。在这段代码中,我们要为p分配内存空间以存储n个整型数据。
首先,sizeof(int)返回一个int类型所占的字节数,通常为4字节(32位系统)或8字节(64位系统)。
然后,n*sizoef(int)计算出所需的内存空间总大小,单位是字节。
malloc()函数用来申请所需的内存空间。在这个例子中,它会为p分配n个sizeof(int)大小的字节空间。
最后,将malloc()函数返回的指向分配空间起始位置的指针赋值给变量p,这样我们就可以通过p来访问动态分配的内存空间。记住,需要将返回的指针强制类型转换为(int*)类型,因为malloc返回的是(void*)类型指针。
这段代码的目的是在运行时动态地分配一个大小为n*sizeof(int)的内存空间,以便存储整型数据,并通过指针p来访问该内存空间。
int *p=(int*)malloc(sizeof(int)*len);
int *p=(int*)malloc(sizeof(int)*); 这段代码的作用是动态分配一个长度为 len 的 int 类型数组,并将其指针赋值给 p。这里使用了 malloc 函数来实现动态内存分配,sizeof(int)*len 表示需要分配的内存大小,int* 表示将返回的地址强制类型转换为 int 指针类型。最后,将指针赋值给 p 可以通过 p 来访问和操作这个动态分配的数组。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)