gpt4 book ai didi

c - 在 C 语言中,无法让一个字符串等于另一个字符串并直接将其传递给 printf

转载 作者:行者123 更新时间:2023-11-30 18:55:59 27 4
gpt4 key购买 nike

因此,正如标题所暗示的那样,我一生都无法让一个字符串等于另一个字符串的内容,然后正确打印。我只是对字符串感到胡言乱语。这是代码:

#include <stdio.h>
#include <math.h>
#include <string.h>
#include <strings.h>

#define MAX_STRING_LEN 4

int main(void)
{
int opselect, mhour, mminute, rhour, rminute, exit;
char ampm[3];
char am[3] = "AM";
char pm[3] = "PM";

printf("Please enter the military time in following format HH:MM \n");
printf("(Example 13:25)\n");

rhour = 12;
rminute = 30;
mhour = 13;
mminute = 30;
strcpy(am, ampm);

printf("If the military time is %d:%d than the regular time is %d:%d %s.\n\n", mhour, mminute, rhour, rminute, ampm);

return 0;
}

程序返回

如果军用时间是 13:30,那么正常时间就是 12:30,胡言乱语。

两个随机字符代替乱码。在我的一生中,我看不到我做错了什么。任何帮助将不胜感激。

谢谢

最佳答案

您可能想这样做:

strcpy(ampm, am); 而不是 strcpy(am, ampm); 从右到左。右边是源,左边是目标。

读作:

将字符串从第二个复制到第一个

关于c - 在 C 语言中,无法让一个字符串等于另一个字符串并直接将其传递给 printf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25818917/

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