c 数据类型大小
我如何知道计算机中所有数据类型的大小?
How i can know the size of all data type in my computer?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我如何知道计算机中所有数据类型的大小?
How i can know the size of all data type in my computer?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
下面的程序应该可以解决基本类型的问题:
这会打印该类型使用的“字节”数,根据定义
sizeof(char) == 1
。 1 的含义(即有多少位)是特定于实现的,并且可能取决于底层硬件。例如,有些机器有 7 位字节,有些机器有 10 或 12 位字节。The following program should do the trick for the primitive types:
This prints the number of "bytes" the type uses, with
sizeof(char) == 1
by definition. Just what 1 means (that is how many bits that is) is implementation specific and likely depend on the underlying hardware. Some machines have 7 bit bytes for instance, some have 10 or 12 bit bytes.您可以将
sizeof
应用于需要知道其大小的每种类型,然后可以打印结果。You can apply
sizeof
to each type whose size you need to know and then you can print the result.sizeof(T)
将为您提供传递给它的任何类型的大小。如果您试图找出特定程序中使用或定义的所有数据类型的大小,您将无法做到这一点——C 在编译时不会维护该级别的信息。sizeof(T)
will give you the size of any type passed to it. If you're trying to find out the size of all data types used or defined in a particular program, you won't be able to--C doesn't maintain that level of information when compiling.使用
sizeof
获取变量类型的大小(以字节为单位)。例如:
#include
sizeof(int32_t)
将返回 4sizeof(char)
将返回 1int64_t a;
sizeof a;
将返回 8请参阅 http:// Publications.gbdirect.co.uk/c_book/chapter5/sizeof_and_malloc.html
Use
sizeof
to get the size of the type of variable (measured in bytes).For example:
#include <stdint.h>
sizeof(int32_t)
will return 4sizeof(char)
will return 1int64_t a;
sizeof a;
will return 8See http://publications.gbdirect.co.uk/c_book/chapter5/sizeof_and_malloc.html