zoukankan      html  css  js  c++  java
  • warning:deprecated conversion from string constant to 'char *'

    warning:deprecated conversion from string constant to ‘char *’ 解决方式

    #include <iostream>
    using namespace std;
    
    int fuc(char *a)
    {
        cout << a << endl;
    }
    int main()
    {
        fuc("hello");
    }

    Linux 环境下当GCC版本号比較高时,编译代码可能出现的问题。

    主要原因是:

    char * 指针指向的字符串是同意改动的,将其作为形參。意味着在函数的某处代码可能改动其指向字符串。

    而理论上,我们传给函数的字面常量是没法被改动的。

    解决方法1.

    把函数形參 參数类型改动为const char *。

    解决方法2.

    假设肯定函数中不会对形參指向变量进行改变。

    能够用(char *)进行强制转换。

  • 相关阅读:
    Docker
    Web
    爬虫
    Python
    软件脱壳
    网络抓包
    HTTPS单向认证,双向认证
    新版无完整背景图片滑块验证码
    Frida Hook
    闭包函数与装饰器
  • 原文地址:https://www.cnblogs.com/gccbuaa/p/7086026.html
Copyright © 2011-2022 走看看