菜鸟科技网

c int 命令

int 是 C 语言中最基本、最常用的数据类型之一,理解它对于学习 C 语言至关重要。

c int 命令-图1
(图片来源网络,侵删)

int 是什么?

intinteger 的缩写,意思是“整数”,在 C 语言中,int 关键字用来声明一个变量,这个变量用于存储整数值,10, -150, 0, 32767 等。

当你想在程序中处理一个不带小数点的数字时,就应该使用 int 类型。


int 的主要用途

int 主要用于以下两种情况:

a) 声明整数变量

这是最常见的用法,你告诉编译器:“我需要一个名为 x 的变量,它用来存储整数。”

c int 命令-图2
(图片来源网络,侵删)

语法: int variable_name;

示例:

#include <stdio.h>
int main() {
    int age;        // 声明一个名为 age 的整型变量
    int score;      // 声明一个名为 score 的整型变量
    int count = 100; // 声明并初始化一个名为 count 的整型变量
    age = 25;       // 给 age 变量赋值为 25
    score = 95;
    printf("年龄: %d\n", age);    // %d 是整数的格式化输出符号
    printf("分数: %d\n", score);
    printf("计数: %d\n", count);
    return 0;
}

b) 声明函数返回整数类型

当你的函数需要执行一个计算并返回一个整数结果时,函数的返回类型就应该声明为 int

语法: int function_name();

c int 命令-图3
(图片来源网络,侵删)

示例:

#include <stdio.h>
// 声明一个函数,它接收两个整数,并返回它们的和(整数)
int add(int a, int b) {
    int result = a + b;
    return result; // 返回一个整数
}
int main() {
    int sum = add(10, 20); // 调用 add 函数,并将返回的整数值赋给 sum
    printf("10 + 20 = %d\n", sum); // 输出: 10 + 20 = 30
    return 0;
}

int 的核心特性

a) 内存大小

int 类型在内存中占用的空间是固定的,但这取决于你的操作系统编译器(具体来说是 int 的字节数)。

  • 在大多数现代的 32 位和 64 位系统(如 Windows, Linux, macOS)上,一个 int 通常占用 4 个字节(32 位)
  • 在一些非常古老的 16 位系统上,它可能占用 2 个字节。

你可以使用 sizeof 运算符来查看在你的系统上 int 的大小:

#include <stdio.h>
int main() {
    printf("int 类型的大小是: %zu 字节\n", sizeof(int));
    // 在 64 位系统上,通常会输出: int 类型的大小是: 4 字节
    return 0;
}

b) 取值范围

由于 int 有固定的大小,它能表示的数值范围也是有限的。

  • int4 字节(32 位),它可以表示的范围是:
    • 最大值 (2³¹ - 1): 2,147,483,647
    • 最小值 (-2³¹): -2,147,483,648

如果你试图存储一个超出这个范围的值,就会发生整数溢出,导致结果不正确。

示例(整数溢出):

#include <stdio.h>
int main() {
    int big_number = 2147483647; // int 的最大值
    printf("big_number 的值是: %d\n", big_number);
    big_number = big_number + 1; // 超出范围,发生溢出
    printf("加 1 后的值是: %d\n", big_number); // 输出可能是一个负数,如 -2147483648
    return 0;
}

int 的常见变体

为了满足不同的需求,C 语言还提供了 int 的几个变体,它们的关键区别在于大小和符号

类型 大小(典型) 取值范围(典型) 描述
int 4 字节 -2,147,483,648 到 2,147,483,647 标准整数,可正可负。
unsigned int 4 字节 0 到 4,294,967,295 无符号整数,只能存储非负数,范围是 int 的两倍,但没有负数。
short int (或 short) 2 字节 -32,768 到 32,767 短整数,用于节省内存,当确定数值不大时使用。
long int (或 long) 4 或 8 字节 依赖系统 长整数,在 64 位系统上通常是 8 字节,范围更大。
long long int (或 long long) 8 字节 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 双长整数,用于存储非常大的整数。

示例:

#include <stdio.h>
int main() {
    int my_int = -123;
    unsigned int my_unsigned_int = 123; // 不能是负数
    short my_short = 32767;
    long my_long = 123456789L; // L 后缀表示 long 类型
    long long my_long_long = 123456789012345LL; // LL 后缀表示 long long 类型
    printf("int: %d\n", my_int);
    printf("unsigned int: %u\n", my_unsigned_int); // %u 用于无符号整数
    printf("short: %d\n", my_short);
    printf("long: %ld\n", my_long);      // %ld 用于 long
    printf("long long: %lld\n", my_long_long); // %lld 用于 long long
    return 0;
}

特性 描述
全称 integer (整数)
用途 声明存储整数的变量。
声明返回整数的函数。
大小 通常是 4 字节(32 位),但取决于系统。
范围 通常是 -2,147,483,648 到 2,147,483,647。
变体 unsigned, short, long, long long,用于满足不同的范围和内存需求。
格式化输出 使用 %d

int 是 C 语言编程的基石,掌握它的用法和特性是编写正确、高效程序的第一步。

分享:
扫描分享到社交APP
上一篇
下一篇