C语言什么是指针数组?

一、问题

什么是指针数组?

二、解答

数组的元素值为指针就是指针数组。指针数组是指⼀组有序的指针的集合。指针数组的所有元素都必须是具有相同存储类型和指向相同数据类型的指针变量。 指针数组说明的⼀般形式为:

cpp 复制代码
类型说明符 *数组名[数组长度]

其中,类型说明符为指针值所指向的变量的类型。

例如:

cpp 复制代码
int *p[3]

上⾯语句表示 p 是⼀个指针数组,它有三个数组元素,每个元素值都是⼀个指针,指向整型变量。

三、总结

我们应注意尤其在排序时,采⽤普通的排序⽅法,逐个⽐较之后交换字符串的位置。 交换字符串的物理位置是通过字符串复制函数完成的。反复地交换将使程序执⾏的速度很慢,又增加了存储管理的负担。

⽤指针数组能很好地解决这些问题。把所有的字符串存放在⼀个数组中,把这些字符数组的⾸地址放在⼀个指针数组中,当需要交换两个字符串时, 只须交换指针数组相应两元素的内容(地址)即可,⽽不必交换字符串本⾝。

相关推荐
AlenTech2 分钟前
647. 回文子串 - 力扣(LeetCode)
算法·leetcode·职场和发展
RFCEO4 分钟前
C语言逆向学习基础课 第1课:数组越界与指针操作基础陷阱
c语言·解引用校验·safe_free宏·悬空指针
py有趣6 分钟前
力扣热门100题之合并两个有序链表
算法·leetcode·链表
书到用时方恨少!8 分钟前
Python NumPy 使用指南:科学计算的基石
开发语言·python·numpy
2501_9333295513 分钟前
技术深度拆解:Infoseek舆情系统的全链路架构与核心实现
开发语言·人工智能·分布式·架构
8Qi821 分钟前
LeetCode热题100--45.跳跃游戏 II
java·算法·leetcode·贪心算法·编程
Chan1641 分钟前
MCP 开发实战:Git 信息查询 MCP 服务开发
java·开发语言·spring boot·git·spring·java-ee·intellij-idea
web前端进阶者1 小时前
Rust初学知识点快速记忆
开发语言·后端·rust
foundbug9991 小时前
基于STM32的步进电机加减速程序设计(梯形加减速算法)
stm32·单片机·算法
东北甜妹1 小时前
MYSQL 总结
数据结构