gpt4 book ai didi

c - C linux中sizeof和strlen的区别

转载 作者:太空狗 更新时间:2023-10-29 11:24:03 25 4
gpt4 key购买 nike

第一个 printf 语句输出 3,第二个输出 20。谁能在这里解释一下这两者之间的区别是什么?

char frame[20],str[20];
printf("\nstrlen(frame)= %d",strlen(frame));
printf("\nsizeof(frame) = %d",sizeof(frame));

谢谢 :)

最佳答案

sizeof 是编译时运算符,用于确定类型消耗的字节大小。在 frame (char[20]) 的情况下,它是 20 个字节。

strlen 是一个运行时函数,它扫描给定的指针,直到第一次出现 nul 终止符 '\0' 返回到那时为止的字符数。

关于c - C linux中sizeof和strlen的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23293308/

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