`
yidongkaifa
  • 浏览: 4052462 次
文章分类
社区版块
存档分类
最新评论

【错误记录】二维数组初始化,以二级指针传递函数参数

 
阅读更多

直接上代码, 在开始的时候,我的代码如下:

typedef unsigned char u8;

void init_func()
{
	u8 pTempStringParamArray[2][4]={0};
	sprintf(pTempStringParamArray[0],"5");
	sprintf(pTempStringParamArray[1],"115");
	
	use_func(pTempStringParamArray);
}

void use_func(u8 *pInputStringArray[])
{
	; // do other thing.
}


在编译的时候,总是会报警告, 说use_func 传入参数不匹配。但是不会影响程序的执行。

后期,有两种解决方案, 一种是将 use_func 的形参改为: u8 *pInputStringArray[4] 。 但是这样会限制数组每一行的数据量。

作为程序员的我们,最好做到最高的通用性, 于是听从老大的建议, 使用二级指针来解决此处的警告和限制。

修改后,代码如下:

typedef unsigned char u8;

void init_func()
{
	u8 pTempStringParamArray[2][4]={0};
	sprintf(pTempStringParamArray[0],"5");
	sprintf(pTempStringParamArray[1],"115");
	
	use_func((u8 **)pTempStringParamArray);
}

void use_func(u8 **pInputStringArray)
{
	; // do other thing.
}


其实是很简单的问题,C语言的指针而已。

分享到:
评论

相关推荐

    函数、内存、一维数组、二维数组

     实体中的变量都有默认初始化值  实体不在被使用,会在不确定的时间内被垃圾回收器回收 方法区,本地方法区,寄存器 数组操作常见问题  数组脚标越界异常(ArrayIndexOutOfBoundsException) int[] ...

    C++ 在堆上开辟与释放二维、三维指针详细解析

    一维指针其实就相当于一维数组,不用去看书上所说的数组在内存中的首地址这些晦涩的话,以此类推 二维指针就相当于二维数组,新手对一维数组的开辟与释放比较容易熟悉,例如上面的a 释放就是 delete []a;...

    1-44.rar_12.21_4*4_串应用_实例

    C语言精彩百例第1-44例 实例1 数据类型转换 实例2 转义字符 实例3 关系和逻辑运算 ...实例38 二维数组指针 实例39 字符串指针 实例40 函数指针 实例41 指针数组 实例42 二维指针 实例43 指针的初始化 实例44 综合实例

    指针与数据操作

    其中涉及到指针基本概念与操作、指针变量的运算与类型、与指针有关的一些问题空指针、通用指针、指针初始化、指针、数组及运算、字符指针与字符串数组、指针数组;程序与存储空间、数据缓冲区、函数与数据接口机制、...

    C程序设计(第四版)学习辅导【谭浩强】

    6.2.3二维数组的初始化152 6.2.4二维数组程序举例153 6.3字符数组155 6.3.1怎样定义字符数组155 6.3.2字符数组的初始化156 6.3.3怎样引用字符数组中的元素156 6.3.4字符串和字符串结束标志157 6.3.5字符数组的输入...

    Visual C++开发实战1200例 第3章

    实例110用指针函数实现求学生成绩 实例111使用指针的指针输出字符串 实例112实现输入月份号输出该月份英文名 实例113使用指向指针的指针对字符串排序 实例114分解字符串中的单词 3.3 数组 实例115向数组中赋值 实例...

    C语言程序设计(谭浩强)第三版

     6.2.3二维数组的初始化  6.2.4二维数组程序举例  6.3.字符数组 6.3.1怎样定义字符数组  6.3.2字符数组的初始化  6.3.3怎样引用字符数组中的元素  6.3.4字符串和字符串结束标志  6.3.5字符数组的输入输出  ...

    谭浩强C程序设计第三版

    二维数组的初始化 99 二维数组程序举例 101 字符数组 101 字符数组的定义 101 字符数组的初始化 101 字符数组的引用 101 字符串和字符串结束标志 102 字符数组的输入输出 102 字符串处理函数 104 程序举例 106 本章...

    谭浩强C语言设计第三版.pdf

     5.3.2 二维数组的初始化  5.3.3 向函数传送二维数组  5.3.4 多维数组  习题五 第6章 指针  6.1 指针基础  6.1.1 地址与指针  6.1.2 指针变量及其定义  6.1.3指针变量的引用  6.1.4 指针的移动与比较  ...

    八十多条C语言基础教程

    (28)二维数组的初始化 (29)二维数组与指针 (30)二维数组应用实例 (31)二维数组应用实例(2) (32)用一维数组来存储字符串 (33)字符串的输入与输出 (34)字符串数组 (35)用于字符串处理的函数 (36)字符串应用实例 (37)传...

    c语言实验报告

    1)掌握一维数组与二维数组的定义、使用及初始化方法。 (2)学习数组作为函数参数的用法。 (3)掌握字符数组和字符串函数的使用方法。 (4)掌握与数组有关的常用排序算法,进一步理解模块化程序设计的方法。 (5...

    C程序设计 第四版 谭浩强 高清扫描版 带完整书签目录 加 学习辅导

    6.2.3 二维数组的初始化 6.2.4 二维数组程序举例 6.3 字符数组 6.3.1 怎样定义字符数组 6.3.2 字符数组的初始化 6.3.3 怎样引用字符数组中的元素 6.3.4 字符串和字符串结束标志 6.3.5 字符数组的输入输出 6.3.6 使用...

    c语言经典源码例子100篇

    实例38 二维数组指针 实例39 字符串指针 实例40 函数指针 实例41 指针数组 实例42 二维指针 实例43 指针的初始化 实例44 综合实例 第二篇 深入提高篇 实例45 结构体变量 实例46 结构体数组 实例47 结构体指针变量 ...

    C语言程序设计(高清PDF)

    6.4.2 指针与二维数组 99 6.4.3 数组指针作函数的参数 102 6.4.4 指针与字符数组 108 6.5 指针的地址分配 111 6.6 指针数组 112 6.7 指向指针的指针 118 6.8 main函数的参数 121 第7章 结构体与共用体 125 7.1 ...

    《C语言程序设计》谭浩强

    7.2.3 二维数组的初始化 87 7.2.4 二维数组程序举例 89 7.3 字符数组 89 7.3.1 字符数组的定义 89 7.3.2 字符数组的初始化 89 7.3.3 字符数组的引用 90 7.3.4 字符串和字符串结束标志 91 6 7.3.5 字符数组的输入输出...

    C语言讲义.doc

    1.1.17 二维数组名作为函数参数 58 1.1.18 const关键字保护数组内容 58 1.1.19 指针做为函数的返回值 58 1.1.20 指向函数的指针 59 1.1.21 把指向函数的指针做为函数的参数 60 1.1.22 memset,memcpy,memmove函数 61 ...

    谭浩强版c语言程序设计

    7.2.3 二维数组的初始化 87 7.2.4 二维数组程序举例 89 7.3 字符数组 89 7.3.1 字符数组的定义 89 7.3.2 字符数组的初始化 89 7.3.3 字符数组的引用 90 7.3.4 字符串和字符串结束标志 91 6 7.3.5 字符数组的输入输出...

    谭浩强c语言word版

    7.2.3 二维数组的初始化 87 7.2.4 二维数组程序举例 89 7.3 字符数组 89 7.3.1 字符数组的定义 89 7.3.2 字符数组的初始化 89 7.3.3 字符数组的引用 90 7.3.4 字符串和字符串结束标志 91 6 7.3.5 字符数组的输入输出...

    二级c未来教育题库破解及资源

    1.一维数组和二维数组的定义、初始化和数组元素的引用。 2.字符串与字符数组。 七、函数 1.库函数的正确调用。 2.函数的定义方法。 3.函数的类型和返回值。 4.形式参数与实际参数,参数值的传递。 5....

Global site tag (gtag.js) - Google Analytics