码破苍穹-2:字符串!const常量!

合集 · 码破苍穹 (8)

  1. 1:46
    码破苍穹-1:自动类型转换!下溢出!
  2. 2:11
    码破苍穹-2:字符串!const常量!
  3. 2:16
    码破苍穹-3:未定义行为!编译优化!
  4. 3:57
    码破苍穹-4:浮点数!
  5. 3:17
    码破苍穹-5:IEEE二进制浮点数算术标准!
  6. 2:42
    码破苍穹-6:补全打印!
  7. 2:13
    码破苍穹-7:局部作用域!
  8. 1:58
    码破苍穹-8:结构体类型声明块!
Description
const修饰的常量并非真正的常量,理论上(不考虑编译器的特殊实现和优化)还是会占用内存单元!

Comments

gawainlh 2024-05-21

在python里,要避免“”内出现转义字符,可以在前面加一个r,表示这个字符串为只读,这个小tip在复制粘贴文件地址的时候很有用

♥ 159 ↩ 6

一只烧贤鱼 2024-05-21

好看,爱看都出。

♥ 155 ↩ 2

超能丶神之语 2024-05-22

大长老说出一次招,但是他出了两次,此事可不能就罢呀

♥ 128 ↩ 3

春风不拂秋叶 2024-05-22

知识以一种很卑鄙的方式进入了脑子 并且挥之不去[笑哭][doge]

♥ 91 ↩ 2

suzychilly 2024-05-21

终于出了 你知道这几天我等的多辛苦吗[大哭]

♥ 51 ↩ 5

冷月闻雪 2024-05-22

什么时候三上云岚宗 码宗强者 恐怖如斯[doge]

♥ 44 ↩ 1

307-33 2024-05-22

活很好,更激情一些就好了[doge]

♥ 21 ↩ 1

胰岛素のmaster 2024-05-22

在编程中,尝试通过强制类型转换来修改一个 const 字符串是不安全且不被推荐的做法。const 关键字的目的是保证变量的值在初始化后不会被改变,这是编译时的强制约束,违反这个约束会导致未定义行为,可能引起程序崩溃或数据损坏。 例如,在 C 或 C++ 中,以下代码是非法的: const char* constStr = "Hello, World!"; constStr【0】 = 'h'; // 错误:试图修改 const 字符串 编译器会阻止你执行这种操作,因为 constStr 是一个指向 const 类型数据的指针,意味着它指向的内容是不可变的。 如果你尝试强制转换并修改它: const char* constStr = "Hello, World!"; char* modifiableStr = (char*)constStr; modifiableStr【0】 = 'h'; // 错误:试图通过强制转换修改 const 字符串 虽然在某些情况下,编译器可能不会报错,但这样做是不安全的,因为它违反了 const 的语义约束,可能导致程序的其他部分出现不可预测的行为,特别是在多线程环境中,或者当编译器优化代码时。 正确的做法是,如果你需要一个可修改的字符串,应该声明一个非 const 类型的字符串: char modifiableStr【】 = "Hello, World!"; modifiableStr【0】 = 'h'; // 正确:修改非 const 字符串 如果你在处理字符串时需要确保数据的不变性,可以考虑使用 const 字符串。如果需要修改字符串,应该使用非 const 类型的字符串。在设计程序时,应该明确区分这两种情况,以保证代码的安全性和可维护性。[脱单doge]

♥ 16 ↩ 3

sh_s_game 2024-05-21

是啊,const是给编译器看的,所以用编译器写还是会出异常[笑哭]

♥ 15 ↩ 2

鸡肚鲵菜花 2024-05-22

知识以一种很卑鄙的方式进入了脑子 并且挥之不去[笑哭][doge]

♥ 6

皑皑吖吖吖 2024-05-21

有点逆天

♥ 6

纯良小爱音 2024-05-22

快继续更新,你是我学习C语言的唯一途径

♥ 5

冬眠怪咩 2024-05-22

爱看,合理且有趣

♥ 5

啊啊啊名称别重复了 2024-05-23

up主你真是天才啊,脑洞太大了[打call][打call]

♥ 4

小小小黑菌 2024-05-24

好看,爱看有成为大up的潜力台词功底再深一台词功底再深一点就行了。[doge][吃瓜]

♥ 3 ↩ 1

咸池金乌 2024-05-21

币给了,虽然看不懂但我大受震撼[星星眼]

♥ 3

快乐好家人 2024-06-01

是玄阶战技:const_cast!

♥ 2 ↩ 1

Liar_sup 2024-05-26

嘶,好像不对呀,我之前写单片机用Const修饰之后,变量是直接开在flash的,flash要修改必须要解锁和擦除,和内存是不一样的。Linux上的话倒是不太清楚能不能改了,有没有懂的能解释一下

♥ 2 ↩ 2

小八嘎就爱喝核污水 2024-05-23

啊,我裂开了[笑哭]

♥ 2 ↩ 1