我有一些代码阅读问题

时间:2016-02-10 10:31:25

标签: code-readability

我很快就要参加C考试了,我会很感激你的帮助,一些代码阅读我无法弄明白,第一个是:

main()
{
    char *p = "Hello", *q = "world!";
    while (*p * *q)
        p++, ++q;
    printf("%c", *q - *p);
}

如果你们能帮我理解输出,那会对我有什么帮助。

1 个答案:

答案 0 :(得分:0)

您发布的代码对我来说似乎不对。

main()

应该是int main()Declare main prototype)。

{
    char *p = "Hello", *q = "world!";

最好是const char *p;What is the type of a string literal in C++?)。

    while (*p * *q)

虽然p指向的值乘以q指向的值不等于零

        p++, ++q;

增加pq

    printf("%c", *q - *p);

printf不是while循环的一部分。在任何情况下,它都会打印指向的值的算术差异。

}