[C 语言笔记--Day22] warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]

在写 C 语言时

char *week[] = {
  "Friday",
  "Saturday",
  "Sunday",
  "Monday",
  "Tuesday",
  "Wednesday",
  "Thursday"
};

是没问题的,

但是在写 C++ 时,

char *week[] = {
  "Friday",
  "Saturday",
  "Sunday",
  "Monday",
  "Tuesday",
  "Wednesday",
  "Thursday"
};

却会跑出警告:

test.cpp:2:3: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
    2 |   "Friday",
      |   ^~~~~~~~
test.cpp:3:3: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
    3 |   "Saturday",
      |   ^~~~~~~~~~
test.cpp:4:3: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
    4 |   "Sunday",
      |   ^~~~~~~~
test.cpp:5:3: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
    5 |   "Monday",
      |   ^~~~~~~~
test.cpp:6:3: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
    6 |   "Tuesday",
      |   ^~~~~~~~~
test.cpp:7:3: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
    7 |   "Wednesday",
      |   ^~~~~~~~~~~
test.cpp:8:3: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
    8 |   "Thursday"
      |   ^~~~~~~~~~

解决方法:加上 const 就可以了

const char *week[] = {
  "Friday",
  "Saturday",
  "Sunday",
  "Monday",
  "Tuesday",
  "Wednesday",
  "Thursday"
};

参考资料:
https://blog.csdn.net/whatday/article/details/106267398


<<:  D3JsDay19 地图加入了事件,地点资料就呈现—为地图加入互动事件

>>:  Day 19 Ruby Proc vs Lambda

[DAY17] 关於 DAL 的一些问题

Q: 为甚麽原本 ActiveRecord 提供的 ORM 不用,要再包一层自己的 ORM? 在本系...

软件开发流程 需求蒐集法2 - 用户访谈

在 软件开发的用户需求哪里来? 介绍了很多软件开发时,蒐集需求的方法,但每个蒐集方法得执行方式都不同...

D19 - 彭彭的课程# Python 文字档案的读取和储存(1)

最近看了地狱厨房 觉得好看!!! 里面一堆肉看起来超好吃的XD 今天终於进入汇入档案的部份 连结:h...

[DAY 25] _STM32 看门狗简介_独立看门狗(1)

剩下这几天我都会看一些我比较不懂的东西,把我自己吸收进来的东西整理上来,我的重点都在20天前面,有兴...

110/08 - 档案要存那里?

以前在写应用程序的时候因为不懂、方便、随性等各种原因,所以就在根目录建立资料夹,把照片影片都往里面丢...