Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C是否能够打印简单代码中使用的变量类型、内存中占用的字节以及它所能保存的最大值?_C - Fatal编程技术网

C是否能够打印简单代码中使用的变量类型、内存中占用的字节以及它所能保存的最大值?

C是否能够打印简单代码中使用的变量类型、内存中占用的字节以及它所能保存的最大值?,c,C,简单代码如下: #include<stdio.h> int main() { printf("%s", "Hello World\n"); return 0; } 是否可以更改输出以显示变量类型、内存中占用的X字节以及它可以容纳的最大值 thx预先C没有任何类型的反射。要打印变量类型,可以将其硬编码为格式字符串: 包括 int mainvoid{ int x=0; printfx是一个int,值为%d\n,x; } //打印x是值为0的整

简单代码如下:

#include<stdio.h>
int main()
{
 printf("%s", "Hello World\n");
 return 0;
}
是否可以更改输出以显示变量类型、内存中占用的X字节以及它可以容纳的最大值


thx预先

C没有任何类型的反射。要打印变量类型,可以将其硬编码为格式字符串:

包括 int mainvoid{ int x=0; printfx是一个int,值为%d\n,x; } //打印x是值为0的整数 也可以使用链接答案中的宏

要获取给定变量占用的内存量,可以使用sizeof:

包括 int mainvoid{ int x=0; printfx在内存中占用%zu字节\n,sizeofx; } //通常打印x占用内存中的4个字节 //int的大小由编译器决定 存在一个标头,该标头为所有内置类型的最大值和最小值定义多个宏。但是,除了在变量溢出之前递增变量外,无法动态获取给定类型的最大值

包括 包括 int mainvoid{ printfint的最大值为%d\n,INT\u MAX; } //通常,prints int的最大值为2147483647 //int的最大值和最小值由编译器确定
什么变量?代码中没有变量。请澄清您的示例及其与您的问题的关系。C不提供内省,但您当然可以做一些事情,例如printfx是大小为%zd\n,sizeof x的无符号int@LookinForAnswers如果这回答了您的问题,您可以单击投票按钮下方的复选标记将其标记为已接受。谢谢您让我知道。我只是点击了一下