char *string=”xxxxxxxxx” 与 char string[]=”xxxxx”的区别

char *string=”xxxxxxxxx” 与 char string[]=”xxxxx”的区别char*string=”xxxxxx“这种方式使用的字面值模式,只读,不可以修改。string是个指针,这个字符串存放在程序的RODATA(read-only)段,不能修改的!表示你定义了一个字符指针,这个指针指向一个字符串常量,既然是常量那么通过这个指针修改这个常量是不可以的。charstring[]=”xxxxx”这种方式,字符串存储在数组

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

char *string=”xxxxxx“

这种方式使用的字面值模式,只读,不可以修改。string是个指针,这个字符串存放在程序的RODATA(read-only)段,不能修改的!

表示你定义了一个字符指针,这个指针指向一个字符串常量,既然是常量那么通过这个指针修改这个常量是不可以的。

char string[]=”xxxxx”

这种方式,字符串存储在数组中,可以修改,string是个数组。这个字符串存放在程序的数据栈中,动态分配的内存,可以修改的.是个变量!

表示你定义了一个字符数组,数组的长度省略没有给出,编译器会根据后边的字符串自动计算,比如这个就是12(11个字符再加一个隐含的结束符’\0’),这个字符数组修改当然就没有问题了

总结

两者的重点在于一个是只读的,常量,内容不可修改!一个是字符串,动态分配内存的,是个变量,内容可以修改!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172130.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月22日 上午8:16
下一篇 2022年8月22日 上午8:16


相关推荐

  • 六、小程序|App抓包-移动端抓包app-抓包「建议收藏」

    六、小程序|App抓包-移动端抓包app-抓包「建议收藏」小程序|App抓包移动端抓包app-抓包 ———-IOS设备系统———一、IOS抓包IOS(thor+anubis)app应用市场下载即可:首次安装需要配置证书:抓包:简单测试抓取部分数据包:查看详细数据包内容:点击数据包查看详情:一直摁着,选择重放可进行重放测试thor跳转anubisanubis相关功能点和界面:重放记录:可修改重放:也可进行其他的导出操作:可以将数据包导出联合burp重放———-Android设备系统———二、android移动

    2022年5月27日
    44
  • 【C#】后台线程IsBackground「建议收藏」

    【C#】后台线程IsBackground「建议收藏」简单点来说:C#中的线程分前台线程和后台线程。对于前台线程来说,如果这些线程不退出,则主线程无法退出,则整个进程也无法退出。会造成即使界面窗口关掉了,但是进程管理器里还有该程序。因此,在关闭窗口时,需要编程显示的把这些前台线程关掉才行。但是,这样就会带来个问题,需要记录这些前台线程的实例才行,很不方便。为此,可以把线程定义为后台线程。后台线程与前台线程的唯一区别就是:后台线程不需要主动关闭。当所有前台线程都退出以后,主线程会自动的关掉后台线程,然后让进程退出。定义线程为后台线程的方法为:Thr

    2022年10月16日
    4
  • Ubuntu安装谷歌_谷歌地球手机专业版

    Ubuntu安装谷歌_谷歌地球手机专业版在Ubuntu18.04中安装谷歌地球GoogleEarthGoogleEarth在Linux系统中(Ubuntu18.04)的安装方法1.安装必备组建2.下载GoogleEarth安装包3.安装GoogleEarth4.开启运行GoogleEarthGoogleEarth在Linux系统中(Ubuntu18.04)的安装方法1.安装必备组建使用gdebi在我们的系统上安装Goo…

    2025年12月11日
    5
  • HttpSession解析[通俗易懂]

    HttpSession解析[通俗易懂]1 .HttpSession概述 1.1 什么是HttpSesssion javax.servlet.http.HttpSession接口表示一个会话,我们可以把一个会话内需要共享的数据保存到HttSession对象中!1.2 获取HttpSession对象HttpSessionrequest.getSesssion():如果当前会话已经有了session对象那么直接返回

    2022年7月12日
    19
  • 百度文心一言ERNIE-4.5开源模型深度测评:架构解析与性能实战对比

    百度文心一言ERNIE-4.5开源模型深度测评:架构解析与性能实战对比

    2026年3月12日
    2
  • matlab插值计算

    matlab插值计算0,说明关于插值,官网有个小总结,可以直接去参考(从1维到多维),下面是我举的例子。1,一维插值interp1(x,y,X1,method)x=linspace(0,10,11)y=sin(x)plot(x,y,’-ro’)插值方法有如下:method=‘nearest’,‘linear’,‘spline’,‘pchip’,‘cubic’比如使用三次条样插值spline,则x=linspace(0,10,11)y=sin(x)plot(x,y,’-ro’)x

    2022年6月4日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号