c语言练习题40:深入理解字符串常量

深入理解字符串常量

cpp 复制代码
#include<stdio.h>
int main() {
	char str1[] = "abcd";
	char* str2 = "abcd";
	printf("%s\n", str1);
	printf("%s\n", str2);
	return 0;
}

char str1\[\] = "abcd";是用字符串初始化数组。

char* str2 = "abcd"; "abcd"为字符串常量

字符串常量不能被修改

例如1:

cpp 复制代码
#include<stdio.h>
int main(int argc,const char*argv[]) {
	char* a[] = { "Work","at","huawei" };
	char** p = a;
	*(*(p + 2) + 1) = 'H';
	printf("%c %c\n", a[2][1], *(*(p + 2) + 1));
	return 0;
}

VS环境下没有输出,但linux下会报错

例如2:

相关推荐
持敬chijing13 小时前
Linux基础命令与目录命令
linux·运维·服务器
yunwei3714 小时前
实证研究:AI Agent 规则需要上下文与分层强制执行
linux·安全·ai编程
小张成长计划..14 小时前
【Linux】12:进程状态
linux·运维·服务器
cjr_xyi14 小时前
AT1202Contest_c binarydigit 题解
c语言·c++·算法
会周易的程序员14 小时前
Libnodave S7 通信库:架构设计与实现解析
linux·c++·物联网·架构·c·s7·工业协议
云栖梦泽14 小时前
Camera驱动开发与应用开发中的零拷贝与DMA
linux·驱动开发·嵌入式硬件
atunet14 小时前
从算法优化到系统加速的多层级思考7
算法
Navigator_Z15 小时前
LeetCode //C - 1156. Swap For Longest Repeated Character Substring
c语言·算法·leetcode
Reart15 小时前
Leetcode 1143.最长公共子序列(720)
后端·算法
无相求码15 小时前
const vs #define:C语言常量定义的差异
c语言·算法