以下指针定义和使用正确的选项是( ) A. int a[2][3], *p = a[1]; B. int a[2][3], *p = a; C. int a[10], *p = a[0]; D. int a = 10, *p; *p = a;
时间: 2024-05-21 18:16:45 浏览: 289
选项 A 是正确的。
在选项 A 中,`a` 是一个二维数组,它有两个行和三个列。`p` 是一个指向整型的指针,指向 `a` 的第二行。这是合法的,因为在内存中,`a` 是按行存储的,所以指向第二行的指针可以使用指针算术运算访问该行中的元素。
选项 B 是错误的。
在选项 B 中,`p` 被声明为指向整型的指针,并指向整个二维数组 `a`。这是不正确的,因为在内存中,`a` 不是按照行存储的,而是按列存储的。因此,使用指针 `p` 访问 `a` 中的元素将会产生错误的结果。
选项 C 是正确的。
在选项 C 中,`a` 是一个包含 10 个整数的数组,`p` 是一个指向整型的指针,指向 `a` 的第一个元素。这是合法的,因为数组名 `a` 实际上是指向数组第一个元素的指针,因此 `p` 指向了 `a` 的第一个元素,也就是 `a[0]`。
选项 D 是错误的。
在选项 D 中,`p` 是一个未初始化的指针,它指向一个未知的地址。在赋值语句 `*p = a` 中,指针 `p` 没有被初始化,因此它指向一个未知的地址,将值 `a` 存储在该地址上将导致未定义的行为。应该先为 `p` 分配内存,然后再将其指向 `a`。
相关问题
已知:int i,j=7,*p=&i;,则与i=j;等价的语句是( ) A. i=**p; B. p=j; C. p=&j; D. *p=j;
正确的选项是 D. `*p=j;`,与 `i=j;` 等价。
首先,定义了整型变量 `i` 和 `j`,并将变量 `j` 的值初始化为 7。还定义了一个指向整型变量 `i` 的指针 `p`,并将其初始化为变量 `i` 的地址。
要将变量 `j` 的值赋给变量 `i`,可以使用赋值语句 `i=j;`。但是,这里需要找到一个与 `i` 等价的表达式,然后将变量 `j` 的值赋给这个表达式。
因为指针 `p` 指向变量 `i` 的地址,所以可以使用 `*p` 来表示变量 `i`。因此,可以使用赋值语句 `*p=j;` 将变量 `j` 的值赋给指针 `p` 所指向的内存地址,即变量 `i` 的值。这样,就实现了将变量 `j` 的值赋给变量 `i` 的效果。
因此,选项 D 正确。
若有以下函数定义,及定义整型变量m和n,则下列选项能正确调用func函数的是()。 void func(int x, int y, int *a, int *b) { *a = x+y; *b = x*y; }
正确调用 `func` 函数的方式是:
```
func(m, n, &a, &b);
```
其中 `m` 和 `n` 是传递给 `func` 函数的整型参数,`&a` 和 `&b` 是传递给 `func` 函数的指向整型变量的指针。在函数内部,`*a` 和 `*b` 分别被赋值为 `x + y` 和 `x * y`。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241231044937.png)
![-](https://img-home.csdnimg.cn/images/20241231044833.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![docx](https://img-home.csdnimg.cn/images/20241231044901.png)