定义一个数组,存放char*类型变量
时间: 2023-08-16 16:05:49 浏览: 85
可以这样定义一个数组来存放char*类型变量:
```
char* myArray[] = {"hello", "world", "this", "is", "an", "example"};
```
这样就定义了一个包含6个char*类型变量的数组,每个元素都是一个指向字符串的指针。你也可以通过下标来访问数组中的元素,例如:
```
printf("%s", myArray[0]); //输出 hello
```
相关问题
c 数组存放结构体地址
C语言中,数组名就是数组的首地址,如果数组元素是结构体类型,那么数组元素存储的就是结构体变量的地址。因此,可以通过定义结构体数组来存储多个结构体变量的地址,例如:
```c
struct student {
char name[20];
int age;
};
int main() {
struct student s1 = {"Alice", 20};
struct student s2 = {"Bob", 21};
struct student s3 = {"Charlie", 22};
struct student students[3] = {s1, s2, s3};
// 或者使用结构体字面量初始化
// struct student students[3] = {{"Alice", 20}, {"Bob", 21}, {"Charlie", 22}};
// 访问结构体数组中的元素
for (int i = 0; i < 3; i++) {
printf("%s is %d years old.\n", students[i].name, students[i].age);
}
return 0;
}
```
在上面的例子中,定义了一个结构体`student`,然后创建了三个结构体变量`s1`、`s2`、`s3`,最后定义一个结构体数组`students`,并将三个结构体变量的地址存储在数组中。通过循环遍历结构体数组`students`,可以访问每个结构体变量的成员。
定义结构体类型数组,结构体类型的第一个成员用字符数组number[6],其中存放房间号;第二个成员用num1,其中存放上个月的表数;第三个成员用num2,其中存放本月表数;第4个成员用charge,其中存放应交费用,每度电的单价为0.488元
可以按照以下方式定义结构体类型数组:
```c
struct Room {
char number[6];
int num1;
int num2;
float charge;
};
struct Room rooms[10]; // 定义包含10个房间的结构体类型数组
```
这个定义创建了一个名为`rooms`的结构体类型数组,其中每个元素都包含了一个名为`number`的字符数组,一个名为`num1`的整型变量,一个名为`num2`的整型变量和一个名为`charge`的浮点型变量。可以通过下标来访问数组中的每个元素,然后通过`.`运算符来访问每个元素的成员。例如:
```c
strcpy(rooms[0].number, "1001"); // 将房间号赋值为"1001"
rooms[0].num1 = 100; // 上个月表数为100
rooms[0].num2 = 200; // 本月表数为200
rooms[0].charge = 0.488 * (rooms[0].num2 - rooms[0].num1); // 计算应交费用
```
阅读全文