阿里巴巴C++核心面试题及详细答案.docxVIP

  • 0
  • 0
  • 约4.38千字
  • 约 10页
  • 2026-06-30 发布于河北
  • 举报

阿里巴巴C++核心面试题及详细答案

一、基础语法类

1.如何初始化指针数组?并说明注意事项

答案:指针数组是“存储指针的数组”,不是“指向数组的指针”,初始化核心是给每个数组元素(指针)分配合法地址,常见3种方式:

• 指向已存在变量:inta=10,b=20;int*arr[2]={a,b};(数组元素指向栈上变量,生命周期与变量一致)

• 动态分配内存:char*strArr[3];strArr[0]=newchar[10];strcpy(strArr[0],ali);(必须手动delete,否则内存泄漏)

• 指向字符串常量:constchar*cityArr[2]={Hangzhou,Beijing};(字符串常量存放在只读区,不可修改)

注意事项:

1. 避免野指针:未初始化的指针数组元素是随机值,必须先赋值再使用

2. 区分指针数组和数组指针:int*arr[5]是指针数组(5个int指针),int(*arr)[5]是数组指针(指向5个int的数组)

3. 动态分配的内存要匹配释放:new[]对应delete[],单个new对应delete,释放后建议置为NULL

2.const关键字的完整用法,解释以下声明的区别

constinta;intconsta;constint*a;in

文档评论(0)

1亿VIP精品文档

相关文档