gpt4 book ai didi

c - 两个 C 语法花絮 : no init for and char *w[4] vs char w[4]

转载 作者:太空狗 更新时间:2023-10-29 15:13:43 25 4
gpt4 key购买 nike

正在研究 Jon Bentley 的 C 风格 Programming Pearls并且想知道是否有人可以向我解释以下两条 C 语法:

没有初始条件的 for(请参阅上面文件中 wordncmp 的第 2 行):

           for ( ; *p == *q; p++, q++)

语义之间的区别

            char *word[800000];

            char word[800000];

因为我认为数组只是指向的指针,在这种情况下,word[0]

答案选择说明: 好吧,作为社区的其他人,我在接受 dmckee 或 CAbbott 答案之间左右为难。他们都有我欣赏的重要知识。我接受了 CAbbott 的回答,因为它更简单,但对 dmckee 投了赞成票。公平地说,我可以不接受两个答案。谢谢。

最佳答案

已经有一段时间了,但这里应该是不同之处:

for ( ; *p == *q; p++, q++)

这只是开发人员不想在 for 循环之前进行任何初始化。在这种情况下,开发人员只想遍历指针。

char *word[800000];
and
char word[800000];

第一个声明了一个800000个字符的数组*,第二个是一个800000个字符的数组

希望对你有帮助

关于c - 两个 C 语法花絮 : no init for and char *w[4] vs char w[4],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1075405/

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