定义int *a,b;中的b是什么类型,为什么
时间: 2024-04-18 12:30:32 浏览: 24
在 `int *a, b;` 这个语句中,`b` 是一个 `int` 类型的变量。
在 C 语言中,声明语句的结构是从右向左解析的。根据这个原则,我们可以逐步分析这个声明语句:
1. 首先,从右向左,`b` 是一个变量,没有任何修饰符,所以它是一个普通的 `int` 类型的变量。
2. 接下来,我们继续往左,`*a` 是一个指针变量。指针变量存储的是内存地址。在这里,`a` 是指针变量的名称,而 `*` 表示该变量是一个指针变量。
综上所述,在 `int *a, b;` 这个语句中,`b` 是一个普通的 `int` 类型的变量,而 `*a` 是一个指针变量。这是因为在 C 语言中,声明语句中的修饰符(如 `*`)只对其直接左边的标识符生效。
相关问题
typedef int* sh;sh a,b;中的b是什么类型,为什么
在 `typedef int* sh; sh a, b;` 这个语句中,`b` 是一个 `int*` 类型的变量。
首先,我们来解析 `typedef int* sh;` 这个语句。`typedef` 关键字用于为已有的类型创建一个新的类型名。在这里,`sh` 被定义为 `int*` 类型的新类型名。
接下来,我们继续解析 `sh a, b;` 这个语句。根据前面的定义,`sh` 等价于 `int*`。所以,这个语句可以理解为 `int* a, b;`。
根据 C 语言声明语句的结构是从右向左解析的原则,我们可以逐步分析这个声明语句:
1. 首先,从右向左,`b` 是一个变量,没有任何修饰符,所以它是一个普通的 `int*` 类型的变量,即指向 `int` 类型的指针。
2. 接下来,我们继续往左,`a` 也是一个变量,但是它是由 `sh` 定义的,即 `int*` 类型的变量。
综上所述,在 `typedef int* sh; sh a, b;` 这个语句中,`b` 是一个指向 `int` 类型的指针变量。而 `a` 也是一个指向 `int` 类型的指针变量,因为 `a` 是由 `sh` 定义的,而 `sh` 在这里等价于 `int*`。
在主函数外定义exchange(int*a,int*b,int*c)
可以这样定义:
```
void exchange(int* a, int* b, int* c) {
int temp = *a;
*a = *b;
*b = *c;
*c = temp;
}
```
这个函数的功能是将指针a所指向的变量的值和指针b所指向的变量的值互换,同时将指针c所指向的变量的值赋给指针b所指向的变量。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.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://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)