在学习结构体时遇到的问题,关于如下代码
#include<stdio.h>
struct player
{
char name[16];
int health;
float damage;
char magic;
}p1, p2, p3, p4;
int main(void)
{
scanf_s("%d%s", &p1.health, p1.name, 17);
printf("name:%s\nhealth:%d", p1.name, p1.health);
}
在vs2022中运行后,输入的整数变量与字符串变量,字符串变量能正常输出,整数类型却会产生变化,
而这里如果将int类修改为float类,虽然有一些误差但基本正常输出,想请问各位是为什么,谢谢!