单选题
如何声明一个指向整数的指针?
A
int *p;
B
pointer int p;
C
int& p;
D
int p*;
答案解析
正确答案:A
解析:
好的,让我们来详细解析这道题。
题目:如何声明一个指向整数的指针?
选项:
A. `int *p;`
B. `pointer int p;`
C. `int& p;`
D. `int p*;`
### 解析:
**A. `int *p;`**
- 这是正确的声明方式。`int *p;` 声明了一个名为 `p` 的指针,该指针指向一个整数类型的数据。
- 示例:
```c
int *p;
int a = 10;
p = &a; // p 现在指向变量 a 的地址
```
**B. `pointer int p;`**
- 这是错误的语法。C/C++ 中没有 `pointer` 关键字。
- 正确的语法应该是 `int *p;`。
**C. `int& p;`**
- 这是错误的语法。`int& p;` 声明的是一个引用(reference),而不是指针。
- 引用是一个别名,它必须初始化,并且一旦初始化后不能改变指向。
- 示例:
```c
int a = 10;
int& p = a; // p 是 a 的别名
```
**D. `int p*;`**
- 这是错误的语法。虽然 `int p*;` 在某些编译器中可能会被接受,但它是不标准的写法。
- 标准的写法应该是 `int *p;`。
### 为什么选 A?
- `int *p;` 是标准的 C/C++ 语法,用于声明一个指向整数的指针。
- 其他选项要么是错误的语法,要么声明了其他类型的变量(如引用)。
