C语言指针:深入解析与应用
在C语言编程中,指针是一个强大且重要的概念。它允许我们直接操作内存地址,从而实现高效的数据处理和灵活的程序设计。本文将深入探讨C语言中指针的多种特性,包括 void* 指针、 const 限定符的使用、指针算术运算以及指针与数组的关系。
1. void* 指针
void* 指针是一种通用指针,它可以指向任何类型的变量。任何指针都可以转换为 void* 类型,并且在转换回原始类型时不会丢失信息。不过,除了 void* 指针外,将一种类型的指针赋值给另一种类型的指针时,通常需要进行强制类型转换。
#include <stdio.h>
int main(void)
{
void *ptr;
char s[] = "abcd";
int i = 10;
ptr = &i;
*(int*)ptr += 20;
printf("%d\n", i);
ptr = s+2;
(*(char*)ptr)++;
printf("%s\n", s);
return 0;
}
在上述代码中,我们首先将 ptr 指向整数 i ,通过 (int*)ptr 将 ptr 强制转换为
超级会员免费看
订阅专栏 解锁全文
2235

被折叠的 条评论
为什么被折叠?



