了解整数类型

有四种整数类型,具体取决于需要保存变量的数值长度。下面给出了32位和64位系统的典型范围。

char  myChar  = 0; /* -128   to +127 */
short myShort = 0; /* -32768 to +32767 */
int   myInt   = 0; /* -2^31  to +2^31-1 */
long  myLong  = 0; /* -2^31  to +2^31-1 */

C99增加了对long long数据类型的支持,保证长度至少为64位。

long long myLL = 0; /* -2^63 to +2^63-1 */

要确定数据类型的大小,请使用sizeof运算符。sizeof运算符返回类型占用的字节数。sizeof运算符返回的类型是size_tsize_t是整数类型的别名。
在C99中引入了修辞符%zu以使用printf格式化此类型。Visual Studio不支持此修辞符,可以使用%Iu

#include <stdio.h>

int main(void) {
  size_t s = sizeof(int);
  printf(%zu, s); /* 4 (C99) */
  printf(%Iu, s); /* 4 (Visual Studio) */
}

也可以使用八进制或十六进制表示法分配整数。以下值均表示相同的数字,十进制表示法为50

#include <stdio.h>

int main() {

  int myDec = 50;   /* decimal notation */
  int myOct = 062;  /* octal notation (0) */
  int myHex = 0x32; /* hexadecimal notation (0x) */

  printf(%d, myDec);
  printf(%d, myOct);
  printf(%d, myHex);
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。