gpt4 book ai didi

C++简单sizeof char数组和char指针的区别

转载 作者:太空宇宙 更新时间:2023-11-04 14:41:49 27 4
gpt4 key购买 nike

char * test = "test";
cout << sizeof(test);


char test2[] = "test";
cout << sizeof(test2);

在 visual studio 2010 上运行,为什么输出是 45
test 不应该是一个字符串文字,sizeof 一个字符串文字不应该是字符串文字中字符元素的数量,包括终止空字符吗?

最佳答案

test 是指向字符串文字的指针,而不是字符串文字(char[]):

  • sizeof(char*)4,与test相关
  • sizeof(char[5])5,与test2[]相关

因此 45 是输出。

关于C++简单sizeof char数组和char指针的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16567650/

27 4 0
文章推荐: php - div 高度不会根据内容大小增长
文章推荐: html - css 中的渐变分布不均匀
文章推荐: html -
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com