C语言随笔:字面量

字面量(Literal)是指程序源代码中直接写出的固定值。字面量用于表示数据常量,它们在程序编译时被直接解析并用于程序运行。

常见的字面量类型

  1. 整数字面量(Integer Literals)

    • 描述:表示整数值。
    • 示例
      • 十进制:42
      • 八进制(以0开头):052(表示十进制的42)
      • 十六进制(以0x0X开头):0x2A(表示十进制的42)
  2. 浮点字面量(Floating-point Literals)

    • 描述:表示带小数点的数值。
    • 示例
      • 标准浮点数:3.14
      • 科学记数法:1.5e2(表示150.0)
  3. 字符字面量(Character Literals)

    • 描述:表示单个字符。
    • 示例
      • 单引号括起来的字符:'a'
      • 特殊字符:'\n'(表示换行符)
  4. 字符串字面量(String Literals)

    • 描述:表示一系列字符组成的字符串。
    • 示例
      • 双引号括起来的字符序列:"Hello, World!"
      • 多行字符串(在某些语言中支持):"""This is a multi-line string"""
  5. 布尔字面量(Boolean Literals)

    • 描述:表示逻辑布尔值。
    • 示例
      • true
      • false
  6. 空值字面量(Null Literals)

    • 描述:表示没有值的状态。
    • 示例
      • C/C++: NULL0
      • Java: null
      • Python: None

注意:所以当在函数中定义一个指针:

cpp 复制代码
void fun(void){

    char *p = "Hello World";
    char carr = "Hello World";
}

其中指针p指向的就是一块字符串常量,其内容不可改变,但p指针本身指向的地址可以改变,并且指针p可以当做函数的返回值。

对于数据carr,他只能是一个局部变量,函数调用完毕后被释放,但其内容可变,但不能当做函数的返回值。

更多的是,sizeof(p)返回的是4,sizeof(carr)返回的是是11,字符串组的大小。

相关推荐
七夜zippoe21 小时前
JVM类加载机制(Class Loading)详解:双亲委派模型与破坏实践
java·开发语言·jvm·类加载·双亲委派
曹牧21 小时前
C#:无法从方法组转换为objec
开发语言·c#
自动化代码美学21 小时前
【Python3.13】官网学习之控制流
开发语言·windows·python·学习
AA陈超1 天前
ASC学习笔记0020:用于定义角色或Actor的默认属性值
c++·笔记·学习·ue5·虚幻引擎
coderxiaohan1 天前
【C++】仿函数 + 模板进阶
开发语言·c++
IMPYLH1 天前
Lua 的 collectgarbage 函数
开发语言·笔记·junit·单元测试·lua
百锦再1 天前
第18章 高级特征
android·java·开发语言·后端·python·rust·django
檐下翻书1731 天前
从入门到精通:流程图制作学习路径规划
论文阅读·人工智能·学习·算法·流程图·论文笔记
Tony Bai1 天前
Go 在 Web3 的统治力:2025 年架构与生态综述
开发语言·后端·架构·golang·web3