2

这是否会正确地声明一个整数和另一个作为指向整数的指针,或者这只会导致问题?

int *countPtr, count;
4

5 回答 5

3

这是一个有效的声明,它会编译。

但是,它可能会导致混淆,因此单独声明它更安全:

int count;
int *countPtr;

为了提高可读性,您可以记住这个简单的规则:

不要在一个声明中混合类型。

你不想看到像int x, y, *p, t[10], i, f();.

于 2013-10-11T14:25:49.557 回答
1

这会正确地声明一个整数和另一个作为指向整数的指针吗?

是的。

这只会引起问题吗?

是的。由于明显的可读性/维护问题,强烈建议不要在一行上声明多种类型(尤其是在您的示例中涉及指针时)。

于 2013-10-11T14:23:05.847 回答
1

完全没问题。

  • countPtr将是一个指向 int 的指针
  • count将只是常规的 int
于 2013-10-11T14:23:11.863 回答
1

不,这是一个有效的声明,将按预期工作。

写作

int* countPtr, count

会做同样的事情,但会导致混乱。

于 2013-10-11T14:23:56.160 回答
1
Will this correctly declare one an integer and another as an pointer?

绝对地。

will this just cause problems?

从编程上讲,不。可读性,取决于您如何解释声明int *countPtr, count;。我将其读作“整数持有者 countPtr 和整数计数”。所以对我来说没有问题。

于 2013-10-11T14:30:51.433 回答