搜刮
打印

请教一下行家C言语,数组传参的思绪。

[复制链接]
84 | 3
跳转到指定楼层
楼主
本帖末了由 zgjzgjkyo 于 2020-9-1 14:47 编辑

我目前是这样的:

  1. void main
  2. {
  3. char TestWord[10]={0xF5, 0x11, 0x00, 0xC3, 0xA4, 0xF5}; //实际上这个不必然是10。也有可能是其它随机大小的数组
  4. //如:char abc[]="123" 又也许 char *abc = ""等等.....
  5. SendString(TestWord);
  6. }


  7. void SendString( *data);
  8. {
  9. unsigned char datalen = strlen(data); //结果发明这里的datalen数值变成”2“了。思考出处是为上面的第3个数字为 0x00了
  10. //如果把 0x00 改为其它数值,也能识别为”6“(但也不切确,我是须要把 10个数包括 0x00也发送进来的)
  11. for(i = 0 ; i < datalen ; i++)/*(datalen = 0 ; datalen < strlen(data) ; datalen++)*/
  12. {
  13. Uart_SendData8(data[i]); //由于辨识不切确,所以无法完全的把数组内容发送进来了.........
  14. }

  15. }
复制代码

我目前想到的形式是间接把数值的长度也传参当年。(但对待发送内容不确定。strlen(data) 这个判断数值的长度。
不知行家有没有更好的计划?传达 不确定长度的数组的传参?

阿~~代码块如何编辑也不雅观阿...........

使用特权

评论回复
沙发
| 2020-9-1 16:59 | 只看该作者
很明显你要传送的是蕴涵0的字节数据,所以不能使用字符串函数。最火的足彩论坛。所以你是对的。

使用特权

评论回复
板凳
| 2020-9-1 22:04 | 只看该作者
设置一个连续是x00的是末尾不就完了。

使用特权

评论回复
地板
| 2020-9-1 23:43 | 只看该作者
字节数组如何可能不定长?这髣?哪个言语都一样

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您须要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 赞扬提倡 创造版块 申请版主

快速回复

您须要登录后才可以回帖
登录 | 注册
初级模式

论坛热帖

封闭

热门举荐上一条 /5 下一条

在线客服 快速回复 前往顶部 前往列表