gpt4 book ai didi

c - 关于 sizeof(char *) 和 sizeof(char[])

转载 作者:行者123 更新时间:2023-11-30 20:15:47 25 4
gpt4 key购买 nike

char *str1 = "pupupupu";
char str2[] = "pupupupu";

printf("%s\t%d\n", str1, (int)sizeof(str1));
printf("%s\t%d\n", str2, (int)sizeof(str2));

输出:

pupupupu    8
pupupupu 9

我的问题:为什么两个输出大小不同?

最佳答案

sizeof(str1) 是 char 指针的大小,其中 sizeof(str2) 给出了字符串长度的数组大小 (pupupupu) + 1

阅读我的这个答案,它不完全相同,但对您有很大帮助:What does sizeof(&arr) returns?

关于c - 关于 sizeof(char *) 和 sizeof(char[]),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16609628/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com