代码小炒2
//chapter1/test4.c#include <stdio.h>
int main(void)
{
int i;
char j;
float k;
i= 123;
j= 'c';
k= 3.14;
printf("size of int is %d\n", sizeof(int));
printf("size of i is %d\n", sizeof(i));
printf("size of char is %d\n", sizeof(char));
printf("size of j is %d\n", sizeof j);
printf("size of float is %d\n", sizeof(float));
printf("size of k is %d\n", sizeof k);
return 0;
} 这个程序演示了使用 sizeof 运算符获取数据类型和变量占用的内存大小。代码存在两处需要修正的问题:
问题修正:
1. 缺少头文件 #include <stdio.h>(用于 printf 函数)
2. printf 应使用 %zu 格式输出 sizeof 结果(因返回值是 size_t 类型)
修正后的代码:
#include <stdio.h>
int main(void)
{
int i;
char j;
float k;
i = 123;
j = 'c';
k = 3.14;
printf("size of int is %zu\n", sizeof(int));
printf("size of i is %zu\n", sizeof(i));
printf("size of char is %zu\n", sizeof(char));
printf("size of j is %zu\n", sizeof j);
printf("size of float is %zu\n", sizeof(float));
printf("size of k is %zu\n", sizeof k);
return 0;
}
关键知识点:
1. sizeof 可作用于数据类型(如 sizeof(int))或变量(如 sizeof i)
2. 常见类型占用内存(通常情况):
o int → 4字节
o char → 1字节
o float → 4字节
3. 输出结果示例:
注意:实际字节数取决于编译器和操作系统(如某些嵌入式系统中 int 可能为2字节)。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页:
[1]