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,字符串组的大小。

相关推荐
charlie11451419115 分钟前
从零开始理解 CSS:让网页“活”起来的语言2
前端·css·笔记·学习·选择器·样式表·原生
im_AMBER15 分钟前
Leetcode 46
c语言·c++·笔记·学习·算法·leetcode
民乐团扒谱机18 分钟前
脉冲在克尔效应下的频谱展宽仿真:原理与 MATLAB 实现
开发语言·matlab·光电·非线性光学·克尔效应
yuan1999722 分钟前
基于扩展卡尔曼滤波的电池荷电状态估算的MATLAB实现
开发语言·matlab
Tony Bai24 分钟前
Go GUI 开发的“绝境”与“破局”:2025 年现状与展望
开发语言·后端·golang
豆浆whisky25 分钟前
Go分布式追踪实战:从理论到OpenTelemetry集成|Go语言进阶(15)
开发语言·分布式·golang
2401_8604947025 分钟前
Rust语言高级技巧 - RefCell 是另外一个提供了内部可变性的类型,Cell 类型没办法制造出直接指向内部数据的指针,为什么RefCell可以呢?
开发语言·rust·制造
Tony Bai25 分钟前
【Go模块构建与依赖管理】08 深入 Go Module Proxy 协议
开发语言·后端·golang
浪裡遊26 分钟前
Next.js路由系统
开发语言·前端·javascript·react.js·node.js·js
程序员-小李27 分钟前
基于 Python + OpenCV 的人脸识别系统开发实战
开发语言·python·opencv