gpt4 book ai didi

c - 字符数组的右填充在 c 中不起作用

转载 作者:行者123 更新时间:2023-11-30 17:37:57 25 4
gpt4 key购买 nike

我有 char 数据数组;我正在将其写入缓冲区以在单行中显示它们。

    char buffer[150] ;

sprintf(buffer, "%-17s%-25s%-20s%-17s%s" , array[0],array[1], array[2],array[3],array[4]);
//code uses buffer to add values to interface

只是我想对齐它们。稍后我使用这些值在界面中显示。

我在这里做错了什么?

注意:数组的示例值

array[0] = '799234' or '799923'-1'
array[1] = '28/02/2014 08:03'
array[2] = 'CCC' or 'CC'
array[3] = '28/02/2014 18:03'
array[4] = '799234' or '79921'

缓冲区的预期结果;我想在每个数组后面添加空格以获得固定长度

799234    28/02/2014 08:03    CCC     28/02/2014 18:03   799234   
799923-1 28/02/2014 08:03 CC 28/02/2014 18:03 79921
79921 28/02/2014 08:03 CCC 28/02/2014 18:03 799234

实际输出

799234    28/02/2014 08:03    CCC     28/02/2014 18:03   799234   
799923-1 28/02/2014 08:03 CCC 28/02/2014 18:03 79921
79921 28/02/2014 08:03 CCC 28/02/2014 18:03 799234

最佳答案

什么是数组array[0]array 的第一个元素。我会写:

char arr0[] = "799234";
char arr1[] = "28/02/2014 08:03";
char arr2[] = "CCC";
char arr3[] = "28/02/2014 18:03";
char arr4[] = "799234";

关于c - 字符数组的右填充在 c 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22248112/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com