c语言怎么取出指针变量中的变量
时间: 2024-05-03 12:21:53 浏览: 7
可以通过解引用指针来取出指针变量中的变量。具体实现方式如下:
```c
int main() {
int num = 10;
int *p = # // 定义指针变量p,并让它指向num变量的地址
printf("%d\n", *p); // 解引用指针p,输出num变量的值
return 0;
}
```
运行结果为:
```
10
```
在上面的代码中,通过将指针变量p指向num变量的地址,就可以通过*p来取出num变量的值。
相关问题
c语言中指针变量有指针嘛
在C语言中,指针变量本身也是一个指针。它指向的是一个内存地址,这个地址存储了另一个变量的地址。因此,指针变量可以被看作是一个存储了另一个变量地址的变量。下面是一个简单的例子,演示了如何定义和使用指针变量:
```c
#include <stdio.h>
int main() {
int var = 10; // 定义一个整型变量 var
int *p; // 定义一个指向整型变量的指针变量 p
p = &var; // 将指针变量 p 指向变量 var 的地址
printf("var 的地址: %p\n", &var );
printf("p 存储的地址: %p\n", p );
printf("p 指向的值: %d\n", *p );
return 0;
}
```
输出结果为:
```
var 的地址: 0x7fff5fbff7ac
p 存储的地址: 0x7fff5fbff7ac
p 指向的值: 10
```
c语言结构体指针变量赋值
假设有以下结构体定义:
```
struct student {
char name[20];
int age;
float gpa;
};
```
可以定义一个结构体指针变量来指向该结构体:
```
struct student *ptr;
```
然后可以动态分配内存空间给该指针变量:
```
ptr = (struct student*) malloc(sizeof(struct student));
```
接着可以给该结构体指针变量赋值,例如:
```
strcpy(ptr->name, "Tom");
ptr->age = 20;
ptr->gpa = 3.5;
```
这样就给结构体指针变量 ptr 的成员变量赋值了。