gpt4 book ai didi

c - "%s expects argument of type char *, but argument 3 has type char (*)[9]"

转载 作者:太空宇宙 更新时间:2023-11-04 01:32:26 25 4
gpt4 key购买 nike

所以这是我第一次使用 scanf() 作为输入,我不知道是什么导致了这个错误。似乎字符数组没有被识别为正确的数据类型,因为它有一个最大长度,但据我所知,没有其他方法可以在 c 中声明一个字符串......这是代码:

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#include "health.h"

Chartptr patientList = NULL; /* Define global variable patientList (declared in health.h) */
/* patientList is globaly accessible in health_util.c */

void main(){

printf("Welcome to the Health Monitoring System\n\n");

int id, type;
double value;
char time[MAXTIME + 1];
scanf("%d, %s, %d, %lf", &id, &time, &type, &value);
printf("--------------------------------------------------\n");
printf("%s: Patient ID = %d checking in", time, id);
addPatient(id);
printf("--------------------------------------------------\n");
printf("\nEnd of Input\n");

}

最佳答案

scanf 调用中将 &time 更改为 time

s 转换说明符需要指向 char 的指针,但您传递的是指向 char 数组的指针。

关于c - "%s expects argument of type char *, but argument 3 has type char (*)[9]",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20436616/

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