在我正在阅读的书中看到这个例子,它对我来说一点意义都没有,我可能遗漏了一些东西,但你似乎正在为计数分配值“10”,然后分配值“x”这甚至不是一个整数。只是想知道这是否是一种有效的语法。
书上是这样说的:
变量 count 和 x 以正常方式声明为整数变量。在下一行,变量 intPtr 被声明为“指向 int 的指针”类型。请注意,这两行声明可以合并为一行:
int count = 10, x, *intPtr;
这是它的程序摘自:
#import <Foundation/Foundation.h>
int main (int argc, char *argv[ ])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int count = 10, x;
int *intPtr;
intPtr = &count;
x = *intPtr;
NSLog (@"count = %i, x = %i", count, x);
[pool drain];
return 0;
}
最佳答案
这只是一个声明。声明由描述类型“基本”部分的初始部分(声明说明符)和逗号分隔的声明符序列组成,每个声明一个单独的名称,并可能修改基本类型。在 C 中,您可以使用相同的声明说明符声明多个名称
int count, x, *intptr;
相当于
int count;
int x;
int *intptr;
可选地,您可以为每个声明符或其中的某些声明符添加一个初始值设定项。所以
int count = 10, x, *intptr;
与
相同int count = 10;
int x;
int *intptr;
仅此而已。
关于c - 这是错误的还是我遗漏了什么(int count = 10, x;),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2030881/