C语言2 常量

目录

[1. 整型常量](#1. 整型常量)

[2. 浮点常量](#2. 浮点常量)

[3. 字符串常量](#3. 字符串常量)

[4. 标识常量](#4. 标识常量)

[5. 字符常量](#5. 字符常量)


C语言中,常量是指在程序运行期间其值不发生变化的数据。常量可以分为整型常量、浮点常量、字符串常量和标识常量。

1. 整型常量

整型常量(简称整数)表示整数值,可以是十进制、八进制或十六进制表示。

十进制数:不以0开头的数字。

八进制数:以0开头的数字。

十六进制数:以0x或0X开头的数字。

复制代码
#include <stdio.h>

int main() {
    int dec = 123;        // 十进制
    int oct = 0123;       // 八进制
    int hex = 0x123;      // 十六进制

    printf("Decimal: %d\n", dec);
    printf("Octal: %d\n", oct);
    printf("Hexadecimal: %d\n", hex);

    return 0;
}

编译并运行:

复制代码
gcc -o int_constants int_constants.c
./int_constants

结果:

复制代码
Decimal: 123
Octal: 83
Hexadecimal: 291

2. 浮点常量

浮点常量(又称实数)通常包含小数部分。在C语言中,实数只有十进制形式,分为单精度和双精度。浮点数有一般形式和指数形式两种表示方法。

一般形式:如3.14

指数形式:如3.0e-23

复制代码
#include <stdio.h>

#define W 3.0e-23

int main() {
    float f = 3.14f;       // 单精度
    double d = 3.14;       // 双精度
    double e = W;          // 指数形式

    printf("Float: %f\n", f);
    printf("Double: %f\n", d);
    printf("Exponential: %e\n", e);

    return 0;
}

编译并运行:

复制代码
gcc -o float_constants float_constants.c
./float_constants

结果:

复制代码
Float: 3.140000
Double: 3.140000
Exponential: 3.000000e-23

3. 字符串常量

字符串常量是用双引号括起来的一串字符。字符串以 `\0`(空字符)结尾。

复制代码
#include <stdio.h>

int main() {
    char str[] = "Hello, World!";
    printf("String: %s\n", str);
    
    char singleChar = 'F';
    printf("Single Character: %c\n", singleChar);
    
    return 0;
}

编译并运行:

复制代码
gcc -o string_constants string_constants.c
./string_constants

结果:

复制代码
String: Hello, World!
Single Character: F

4. 标识常量

标识常量(也叫符号常量)使用宏定义(`#define`)来创建。其名称通常是一个标识符,使用前必须预先定义。

复制代码
#include <stdio.h>

#define MAX 10

int main() {
    for (int i = 0; i < MAX; i++) {
        printf("%d ", i);
    }
    printf("\n");

    return 0;
}

编译并运行:

复制代码
gcc -o define_constants define_constants.c
./define_constants

结果:

复制代码
0 1 2 3 4 5 6 7 8 9

5. 字符常量

字符常量是用单引号括起来的一个字符。例如,字符常量 `'A'` 表示字符 `A`,其对应的ASCII值是65。

复制代码
#include <stdio.h>

int main() {
    char a = 'F';
    printf("Character: %c, ASCII: %d\n", a, a);
    return 0;
}

编译并运行:

复制代码
gcc -o char_constants char_constants.c
./char_constants

结果:

复制代码
Character: F, ASCII: 70
相关推荐
LuminousCPP17 小时前
栈和队列专题(四):LeetCode 232. 用栈实现队列|双栈分工 + 按需迁移 + 摊还 O(1)
c语言·数据结构·笔记·算法·leetcode
名字还没想好☜17 小时前
用 Python struct 解析二进制协议:pack/unpack、字节序与对齐踩坑
开发语言·python·二进制·struct
一知半解仙18 小时前
当机器人学会泛化,而我在写Java:一名后端开发者的2026年8月21日观察手记
java·开发语言·机器人
流浪00118 小时前
C/C++ 后端筑基系列(一):C语言 —— 从基础到进阶系统指南
c语言
青 春 记 忆18 小时前
LeetCode 155. 最小栈|Python 解法详解
开发语言·python·leetcode
剩下了什么1 天前
float32 与 float64 精度陷阱:如何在 Go 中避免错误使用
开发语言·后端·golang
指尖时光.1 天前
Three.js 超全入门综合案例
开发语言·javascript·ecmascript
暴力求解1 天前
Linux网络---传输层协议TCP(二)
linux·服务器·开发语言·网络·tcp/ip
吴声子夜歌1 天前
Java面试题——基础(一)
java·开发语言
小庞在加油1 天前
WinDbg实战:QT/跨平台项目死锁与无响应问题排查指南
开发语言·qt·windbg·工具