【C语言】常量的 “前缀和后缀” 大通关!

简介: 在C语言中,常量的前缀和后缀用于明确指定常量的类型和进制系统。前缀主要用于区分不同进制的数字常量,而后缀则用于区分不同类型的整数和浮点数。正确使用前缀和后缀,可以提高代码的可读性和可维护性,确保编译器正确地理解和处理常量。

C 语言常量的前缀和后缀

在 C 语言中,常量(literal)用于表示固定的值,可以是整数、浮点数、字符或字符串。不同的前缀和后缀用于指定常量的类型和格式,帮助编译器理解常量的类型和范围。以下是C语言中常见的常量前缀和后缀及其详细解析。

1. 整型常量

整型常量用于表示整数值。前缀用于指定数值的进制,后缀用于指定常量的类型。

1.1 整型常量的前缀

前缀 全称 说明 示例
无前缀 - 十进制整数 123
0 Octal 八进制整数 075
0x0X Hexadecimal 十六进制整数 0x7F
0b0B Binary 二进制整数 0b1010

示例代码

#include <stdio.h>

int main() {
   
    int decimal = 123;   // 十进制
    int octal = 075;     // 八进制
    int hex = 0x7F;      // 十六进制
    int binary = 0b1010; // 二进制

    printf("Decimal: %d\n", decimal);
    printf("Octal: %d\n", octal);
    printf("Hex: %d\n", hex);
    printf("Binary: %d\n", binary);

    return 0;
}

输出结果

Decimal: 123
Octal: 61
Hex: 127
Binary: 10

1.2 整型常量的后缀

后缀 全称 说明 示例
Uu Unsigned 无符号整型 123U
Ll Long 长整型 123L
LLll Long Long 长长整型 123LL
UL, uL, Ul, UL Unsigned Long 无符号长整型 123UL
ULL, ull, uLL, Ull Unsigned Long Long 无符号长长整型 123ULL

示例代码

#include <stdio.h>

int main() {
   
    unsigned int u_decimal = 123U;     // 无符号整型
    long l_decimal = 123L;             // 长整型
    long long ll_decimal = 123LL;      // 长长整型
    unsigned long ul_decimal = 123UL;  // 无符号长整型
    unsigned long long ull_decimal = 123ULL; // 无符号长长整型

    printf("Unsigned Decimal: %u\n", u_decimal);
    printf("Long Decimal: %ld\n", l_decimal);
    printf("Long Long Decimal: %lld\n", ll_decimal);
    printf("Unsigned Long Decimal: %lu\n", ul_decimal);
    printf("Unsigned Long Long Decimal: %llu\n", ull_decimal);

    return 0;
}

输出结果

Unsigned Decimal: 123
Long Decimal: 123
Long Long Decimal: 123
Unsigned Long Decimal: 123
Unsigned Long Long Decimal: 123

2. 浮点型常量

浮点型常量用于表示带小数点的数值。后缀用于指定浮点数的精度。

2.1 浮点型常量的后缀

后缀 全称 说明 示例
Ff Float 单精度浮点型 3.14F
Ll Long Double 扩展精度浮点型 3.14L

示例代码

#include <stdio.h>

int main() {
   
    float f = 3.14F;    // 单精度浮点型
    double d = 3.14;    // 双精度浮点型
    long double ld = 3.14L; // 扩展精度浮点型

    printf("Float: %f\n", f);
    printf("Double: %f\n", d);
    printf("Long Double: %Lf\n", ld);

    return 0;
}

输出结果

Float: 3.140000
Double: 3.140000
Long Double: 3.140000

3. 字符型和字符串型常量

字符型常量和字符串型常量用于表示字符和字符串值。它们没有前缀和后缀。

3.1 字符型常量

字符型常量用单引号包围,表示单个字符的 ASCII 码值。

示例代码

#include <stdio.h>

int main() {
   
    char c = 'A';    // 字符型常量

    printf("Character: %c\n", c);
    printf("ASCII Value: %d\n", c);

    return 0;
}

输出结果

Character: A
ASCII Value: 65

3.2 字符串型常量

字符串型常量用双引号包围,表示一个字符数组,末尾自动包含一个 null 终止符 \0

示例代码

#include <stdio.h>

int main() {
   
    const char* str = "Hello"; // 字符串型常量

    printf("String: %s\n", str);

    return 0;
}

输出结果

String: Hello

表格总结

类型 前缀 后缀 全称 说明 示例
整型常量 无前缀 Uu Unsigned 无符号整型 123U
Ll Long 长整型 123L
LLll Long Long 长长整型 123LL
UL, uL, Ul, UL Unsigned Long 无符号长整型 123UL
ULL, ull, uLL, Ull Unsigned Long Long 无符号长长整型 123ULL
0 - Octal 八进制整数 075
0x0X - Hexadecimal 十六进制整数 0x7F
0b0B - Binary 二进制整数 0b1010
浮点型常量 - Ff Float 单精度浮点型 3.14F
- Ll Long Double 扩展精度浮点型 3.14L
字符型常量 无前缀 - - 单个字符,ASCII 码值 'A'
字符串型常量 无前缀 - - 字符数组,末尾包含 \0 终止符 "Hello"

5. 总结

在C语言中,常量的前缀和后缀用于明确指定常量的类型和进制系统。前缀主要用于区分不同进制的数字常量,而后缀则用于区分不同类型的整数和浮点数。正确使用前缀和后缀,可以提高代码的可读性和可维护性,确保编译器正确地理解和处理常量。

6. 参考文献

  • Kernighan, Brian W., and Dennis M. Ritchie. The C Programming Language. Prentice Hall, 1988.
  • Prata, Stephen. C Primer Plus. Addison-Wesley Professional, 2013.
  • ISO/IEC 9899:2018, Information technology – Programming languages – C.
  • ISO/IEC. (2024). ISO/IEC DIS 9899. Programming Languages – C.

7. 结束语

  1. 本节内容已经全部介绍完毕,希望通过这篇文章,大家对C语言中常量的前缀和后缀有了更深入的理解和认识。
  2. 感谢各位的阅读和支持,如果觉得这篇文章对你有帮助,请不要吝惜你的点赞和评论,这对我们非常重要。再次感谢大家的关注和支持
目录
相关文章
|
6月前
|
C语言
C语言——字符串大小写互换
C语言——字符串大小写互换
98 0
|
7月前
|
C语言
C语言常量与变量、字符串与转义字符
C语言常量与变量、字符串与转义字符
51 0
|
7月前
|
存储 C语言
C语言中的变量与常量:深入解析
C语言中的变量与常量:深入解析
156 0
|
7月前
|
C语言
【C语言】五种方法实现C语言中大小写字母的转化
【C语言】五种方法实现C语言中大小写字母的转化
301 0
|
7月前
|
编译器 C语言
C语言入门之变量、常量、字符串、转义字符
C语言入门之变量、常量、字符串、转义字符
|
7月前
|
C语言
C语言6🔥:本地变量与转义字符
C语言6🔥:本地变量与转义字符
50 0
|
安全 C语言
【C语言】 变量 -- 常量 -- 转义字符
【C语言】 变量 -- 常量 -- 转义字符
|
C语言
C语言基础知识-变量-常量-转义字符-数组
C语言基础知识-变量-常量-转义字符-数组
73 0
|
编译器 程序员 C语言
初识C语言(3)变量,常量,注释
初识C语言(3)变量,常量,注释
91 0
|
存储 算法 C语言
前缀和【C语言】
前缀和算法是一种优化技巧,常用于解决数组问题中的查询操作,例如区间求和、区间最大值/最小值等。其基本思路是先预处理出一个前缀和数组,在需要查询时通过计算前缀和数组的差值来得到查询结果。这个算法可以在O(1)的时间内回答很多查询问题,因此在实际编程中被广泛使用。