字符指针变量和字符数组

简介: 字符指针变量和字符数组

1.字符指针变量和字符数组

char str[100] = “aaa”;//定义时候初始化

这样写就不行

char str[100];

str = “aaa”;

修改成这样才可以

strcpy(str, “aaa”);

但像字符指针的操作是可以的

const char * a;

a = “aaa”;

这是因为aaa是字符串常量,在内存中是有固定地址的,这行只是让字符指针a指向这个地址而已

指针变量的值是可以变的,也就是指针指向的位置可以发生改变,例如

const char*a = “I love China!”;

a = a + 7; //原来指向字符“I“,这里跳过7字节,整好指向China

printf(“%s”,a);//China!

但是数组名虽然代表数组首地址,但是其值不能改变

char a[] = “I love China!”;

a = a + 7; //这是错的,因为数组名代表的数组首地址是不能发生改变的

2.字符串

字符串表现形式可以用字符数组表示

char test1[] = “aaaa”;

char test2[] = “aaaa”;

这是两个内存

也可以用字符指针实现表示

const char * test1 = “aaaa”;

const char * test2 = “aaaa”;

这是两个指针,但aaaa只占一个内存空间

相关文章
|
13天前
使用指针访问数组元素
【10月更文挑战第30天】使用指针访问数组元素。
29 3
|
12天前
使用指针访问数组元素
【10月更文挑战第31天】使用指针访问数组元素。
26 2
|
21天前
|
算法 索引
单链表题+数组题(快慢指针和左右指针)
单链表题+数组题(快慢指针和左右指针)
26 1
|
30天前
|
存储
如何使用指针数组来实现动态二维数组
指针数组可以用来实现动态二维数组。首先,定义一个指向指针的指针变量,并使用 `malloc` 为它分配内存,然后为每个子数组分配内存。通过这种方式,可以灵活地创建和管理不同大小的二维数组。
|
30天前
|
存储
如何通过指针数组来实现二维数组?
介绍了二维数组和指针数组的概念及其区别,详细讲解了如何使用指针数组模拟二维数组,包括定义与分配内存、访问和赋值元素、以及正确释放内存的步骤,适用于需要动态处理二维数据的场景。
|
30天前
|
存储 算法 C语言
C语言:什么是指针数组,它有什么用
指针数组是C语言中一种特殊的数据结构,每个元素都是一个指针。它用于存储多个内存地址,方便对多个变量或数组进行操作,常用于字符串处理、动态内存分配等场景。
|
1月前
|
存储 C语言
C语言指针与指针变量的区别指针
指针是C语言中的重要概念,用于存储内存地址。指针变量是一种特殊的变量,用于存放其他变量的内存地址,通过指针可以间接访问和修改该变量的值。指针与指针变量的主要区别在于:指针是一个泛指的概念,而指针变量是具体的实现形式。
|
1月前
魔法指针 之 指针变量
魔法指针 之 指针变量
15 1
|
1月前
魔法指针 之 二级指针 指针数组
魔法指针 之 二级指针 指针数组
19 1
|
1月前
|
人工智能
魔法指针 之 指针变量的意义 指针运算
魔法指针 之 指针变量的意义 指针运算
19 0