数组初始化相同字符串和指针指向相同字符串的区别

简介: 数组初始化相同字符串和指针指向相同字符串的区别

数组初始化相同字符串:

1.     char str1[] = "hello bit";
2.  char str2[] = "hello bit";

(1)数组str1和数组str2初始化时,各自有不同的空间,因此各自都存放一份hello world字符串

指针指向相同字符串:

1.     //VS2019初始化字符串指针时,认为字符串是const char*类型,因此指针类型也应为const char类型
2.     const char* p1 = "hello bit";
3.  const char* p2 = "hello bit";

(2)   指针p1和指针p2初始化时,常量字符串是不能修改的,内存为了节省空间,在静态区会存放一份常量字符串,p1和p2都指向hello world字符串

通过VS监视的方法也可以看出,str1和str2指向不同的地址,p1和p2指向相同的地址

str1和str2分别指向不同地址:0x012FF8F8和0x012FF8E4

 

p1和p2指向相同地址:x0053AC90


相关文章
|
2天前
|
编译器 C语言
指针进阶(数组指针 )(C语言)
指针进阶(数组指针 )(C语言)
|
3天前
|
C语言
【C语言】:详解函数指针变量,函数指针数组及转移表
【C语言】:详解函数指针变量,函数指针数组及转移表
10 2
|
3天前
|
C语言
【C语言】:详解指针数组,数组指针及(二维)数组传参(2)
【C语言】:详解指针数组,数组指针及(二维)数组传参(2)
8 1
|
3天前
|
Serverless C语言
【C语言】:对(一维)数组与指针的深入理解(1)
【C语言】:对(一维)数组与指针的深入理解(1)
8 1
|
23小时前
|
存储 C语言
C语言中的多级指针、指针数组与数组指针
C语言中的多级指针、指针数组与数组指针
5 0
|
1天前
|
存储 C语言
C语言数组指针详解与应用
C语言数组指针详解与应用
8 0
|
6天前
|
C语言
C语言----关于二维数组传参的本质相关的知识点(数组指针、指针数组)
C语言----关于二维数组传参的本质相关的知识点(数组指针、指针数组)
|
2天前
|
C语言
指针进阶(C语言终)
指针进阶(C语言终)
|
2天前
|
C语言
指针进阶(回调函数)(C语言)
指针进阶(回调函数)(C语言)
|
2天前
|
存储 C语言 C++
指针进阶(函数指针)(C语言)
指针进阶(函数指针)(C语言)