开发者社区> 问答> 正文

C语言中字符串和数组的区别是什么?

C语言中字符串和数组的区别是什么?

展开
收起
游客gaiketk6mpmke 2022-03-29 15:15:22 878 0
1 条回答
写回答
取消 提交回答
  • 数组的元素可以是任意一种类型,而字符串是一种非凡的数组,它使用了一种众所周知的确定其长度的规则。

    有两种类型的语言,一种简单地将字符串看作是一个字符数组,另一种将字符串看作是一种非凡的 类型。C属于前一种,但有一点补充,即C字符串是以一个NUL字符结束的。数组的值和数组中第一个元素的地址(或指向该元素的指针)是相同的,因此通常一个C字符串和一个字符指针是等价的。

    一个数组的长度可以是任意的。当数组名用作函数的参数时,函数无法通过数组名本身知道数组的大小,因此必须引入某种规则。对字符串来说,这种规则就是字符串的最后一个字符是ASCII字符“NUL('\0')”。

    2022-03-29 16:53:23
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载