gpt4 book ai didi

在 C 中通过混合 char[] 和 int 创建字符串

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

我是 C 新手,我试图弄清楚如何创建由按长度排列的 char[] 和整数混合组成的单独字符串 (char[]) -

例如,如果我有 char[] 名字、char[] 姓氏和 int 年龄,我需要将它们全部放在 1 行相同长度的示例中 -

乔 |史密斯 |45
艾米|脚|2

每一行都有自己的 char[] 并排列起来。

这是我到目前为止的代码 -

while(temp != NULL)
{
char listLine[IDLEN + FOODNAMELEN + DESCLEN + 10];
char * id = temp->data->id;
char * name = temp->data->name;
int dollars = temp->data->price.dollars;
int cents = temp->data->price.cents;

sprintf(listLine,"%s |%s |$%d.%d\n", id, name, dollars, cents);
printf("%s",listLine);
temp = temp->next;
}

这工作正常,但我似乎无法排列 |彼此之间。

我对堆栈交换还是新手,所以我不确定如何标记为作业...但是是的,这是作业。

任何帮助都会很棒。

谢谢

最佳答案

您可以将宽度说明符与printf一起使用格式说明符。

示例:

printf("%3d | %10s", 32, "Hello");

将打印

_32 | _____你好

哪里_ (下划线)代表空格

您还可以使用 printf("%*d", width, 32); 将宽度指定为参数。 width可以由您正在打印的字符串的长度确定。字符串的最大长度可以是您想要的宽度。对于数字,您可以假设任何数字(32 位数字)都不会超过 10 位(232 以十进制表示有 10 位数字)

参见this

关于在 C 中通过混合 char[] 和 int 创建字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23880810/

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