百味人生0x 2022-04-24 21:06 采纳率: 0%
浏览 39

char 类型指针循环可以打印数据但字符串不打印

#define BUF_SIZE 9
char set_buf[BUF_SIZE ] = "";

int set_buf(char *buf, unsigned int size) {
for (int i = 0; i < size; i++)
{
buf[i] = i+2;
}
buf[size]='\0';
printf("set_buf set_buf=%s \n", buf); //为什么这里什么都打印
}

int main() {
set_buf(set_buf, BUF_SIZE );
return 0;
}
输入打印如下:
buf[0]=2
buf[1]=3
buf[2]=4
buf[3]=5
buf[4]=6
buf[5]=7
buf[6]=8
buf[7]=9
buf[8]=a
set_buf set_buf=

知道是什么问题吗? 需要怎么解决 因为最后还需要将buf 数据传给其它程序;

  • 写回答

2条回答 默认 最新

  • 百味人生0x 2022-04-24 21:08
    关注

    printf("buf[%d]=%x \n", i, buf[i]); 上述代码中for循环中有一行打印的,csdn 提问题规范要求不允许重复就删掉了

    评论

报告相同问题?

问题事件

  • 创建了问题 4月24日

悬赏问题

  • ¥15 SQL Server下载
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥15 python爬取bilibili校园招聘网站
  • ¥30 求解达问题(有红包)
  • ¥15 请解包一个pak文件
  • ¥15 不同系统编译兼容问题
  • ¥100 三相直流充电模块对数字电源芯片在物理上它必须具备哪些功能和性能?
  • ¥30 数字电源对DSP芯片的具体要求