ZHI_YUE 2023-03-25 12:10 采纳率: 50%
浏览 84

关于char类型指针指向数组后的长度问题

设有如下的程序段: char s[]="boy",t; t=s;,则下列叙述正确的是 ()
A.s和t完全相同
B.数组s 中的内容和指针变量t 中的内容相等
Cs 数组长度和t 所指向的字符串长度相等
D.
(++t)与 s[1]相等

为什么答案是D,想问问C错在哪

  • 写回答

3条回答 默认 最新

  • IT_service_mesh 2023-03-25 12:13
    关注

    参考GPT和自己的思路:答案D是正确的。因为语句t=s;将指针t指向了字符串s的第一个字符,即字符'b'。而++t试图让指针t指向下一个字符,即字符'o',因此++t得到的值应该与s[1]相等。而选项C中说数组长度和t所指向的字符串长度相等是错误的,因为s是一个包含三个字符的字符串,而t实际上只是一个指针,它没有记录字符串的长度。

    评论

报告相同问题?

问题事件

  • 创建了问题 3月25日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵