下列程序为何编译后提示“C6064"和”C6054“


//talk back.c--演示与用户交互
#include<stdio.h>
#include<string.h>
#define DENSITY 62.4

int main(void)
{
    float weight, volume;
    int size, letters;
    char name[40];
    printf("Hi! What's your first name?\n");
    scanf_s("%s", name);
    printf("%s, what's your weight in pounds?\n", name);
    scanf_s("%f", &weight);
    size = sizeof name;
    letters = strlen(name);
    volume = weight / DENSITY;
    printf("Well,%s, your volume is %2.2f cubic feet.\n",name,volume);
    printf("Also, your first name has %d letters,\n", letters);
    printf("and we have %d byte to store it.\n", size);
    return 0;
}

第13行:scanf_s("%s", name); 应改为:scanf_s("%s", name,40);

第16行:size = sizeof name; 应改为:size = sizeof (name);