我目前正在学习 C 编程,并且在我正在做的练习之一中遇到了问题。
在尝试解码指针如何工作时,我收到以下错误:
C++ 要求所有声明都有类型说明符
我的程序:
#include <iostream>
#include <stdio.h>
int a = 1, b = 2;
double c = 3.1415;
int *x, *y;
x = &a;
y = &b;
int main() {
printf("&a = %p\n", &a);
printf("&b = %d\n", &b);
printf("&c = %f\n", &c);
printf("&x = %p\n", &x);
printf("&y = % \n", &y);
printf("x = %p\n", x);
printf("y = %p\n", y);
printf("a = %e\n", a);
printf("b = %d\n", b);
printf("*y = %d\n", *y);
printf("c = %8.4f\n", c);
printf("c = %4.2e\n", c);
}
它是
x = &a;
y = &b;
显示为错误。
任何帮助将不胜感激!
亲切的问候
最佳答案
不能在函数之外有语句。但是您可以对声明进行初始化。
int *x, *y;
x = &a;
y = &b;
不正确,但是
int *x = &a, *y = &b;
是。
尽管我会这样写以使其更具可读性(特别是如果您的目标是 C++):
int* x = &a;
int* y = &b;
关于c++ - 指针:C++ 要求所有声明都有类型说明符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34962584/