为什么会这样?怎么改?

“写入0x0000000A发生访问冲突”,本人c语言初学者,调试一段简单代码,结果报错了,环境是vs2019,能告诉我为什么会这样吗?十分感谢!

img

img


#include<stdio.h>
int main()
{
    int i;
    char c;
    float f;
    scanf_s("%d%c%f", &i,&c,sizeof(c),&f);
    printf("i=%d,c=%c,f=%f\n", i, c, f);
}

canf后面的参数应该是地址,你填写的10,16进制是0a,这个地址是不能访问的,而且你前面格式参数个数和后面的参数个数不一致。


#include<stdio.h>
 void main(
     int i;
     float f;
     char c;
     scanf_s("%d%c%f“,&i,&c,&f);
    printf("i=%d,c=%c,f=%f\n",i,c,f);
)

望采纳