怎样给结构体成员里的字符串利用for循环赋值
时间: 2023-07-19 09:39:15 浏览: 115
可以通过以下方式利用for循环给结构体成员里的字符串赋值:
```c
#include <stdio.h>
#include <string.h>
#define MAX_NAME_LENGTH 50
#define MAX_ADDRESS_LENGTH 100
struct Person {
char name[MAX_NAME_LENGTH];
char address[MAX_ADDRESS_LENGTH];
int age;
};
int main() {
struct Person person;
int i;
// 给name赋值
char name[] = "Tom";
for (i = 0; i < strlen(name); i++) {
person.name[i] = name[i];
}
person.name[i] = '\0'; // 手动添加字符串结束标记
// 给address赋值
char address[] = "No.123 Main Street";
for (i = 0; i < strlen(address); i++) {
person.address[i] = address[i];
}
person.address[i] = '\0'; // 手动添加字符串结束标记
person.age = 25;
printf("Name: %s\n", person.name);
printf("Address: %s\n", person.address);
printf("Age: %d\n", person.age);
return 0;
}
```
在上面的例子中,我们定义了一个名为`Person`的结构体,其中包含了一个名为`name`的字符串和一个名为`address`的字符串。我们通过for循环逐个赋值的方式,给结构体成员里的字符串赋值,并且手动添加了字符串结束标记`\0`。最终,我们打印出了这个结构体的所有成员的值。