C语言中结构体的中的字符串的内容如何修改?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中结构体的中的字符串的内容如何修改?相关的知识,希望对你有一定的参考价值。
struct information long int num; char name[20]; int num1,num2,num3; ;struct information stu[N];for(p=stu+i;i<j-1;i++,p++) p->num=(p+1)->num; p->name=(p+1)->name; p->num1=(p+1)->num1; p->num2=(p+1)->num2; p->num3=(p+1)->num3; 我在这里是想从i项开始结构体的内容都被下个结构体的内容所替代然后编译时程序显示这里有问题p->name=(p+1)->name;
参考技术A 两步。1、#include<string.h>
2、strcpy(p->name,(p+1)->name);
也可整体赋值:
*p=*(p+1);本回答被提问者和网友采纳
C语言中结构体的理解
参考技术A一、结构体定义
结构体是一个或多个数据的集合,这些数据可以是不同的类型,结构体相当于 数组 的升级。假如我们要统计一个班级学生的成绩,成绩属于float类型,我们可以将成绩用 数组 存放。但是如果要统计一个班级的学生的姓名、性别、成绩,姓名为字符串型,年龄为整数型,成绩为小数型,因为数据类型不同,显然不能用 数组 存放。为了解决这一问题,C语言中给出了另一种构造数据类型——结构体(Struct)。它可以将同一对象的多个数据类型存储在一起。
二、定义形式
方式1 、将结构体变量直接放在结构体尾端
Struct 结构体名
类型1 元素1;
类型2 元素2;
…
类型n 元素n;
结构体变量;
例 :假设将一个班级学生的“姓名”定义为结构体变量,“性别”和“成绩”为结构体内部元素
Struct Student
char* sex; //性别
float score; //成绩
zhangsan; //学生姓名张三
方式2 、先定义结构体,然后在定义结构体变量
Struct 结构体名
类型1 元素1;
类型2 元素2;
…
类型n 元素n;
;
Struct 结构体名 结构体变量;
例 :假设将一个班级学生的“姓名”定义为结构体变量,“性别”和“成绩”为结构体内部元素
Struct Student
char* sex; //性别
float score; //成绩
;
Struct Student zhangsan; //学生姓名张三
方式3、将结构体名省略
Struct
类型1 元素1;
类型2 元素2;
…
类型n 元素n;
结构体变量;
例 :假设将一个班级学生的“姓名”定义为结构体变量,“性别”和“成绩”为结构体内部元素
Struct
char* sex; //性别
float score; //成绩
zhangsan; //学生姓名张三
三、结构体初始化
以方式2的例子为例
Struct Student
char* sex; //性别
float score; //成绩
;
Struct Student zhangsan; //学生姓名张三
/****初始化*****/
Struct Student zhangsan=“nan”,100; //张三 男 成绩100
四、结构体使用
以方式2的例子为例
Struct Student
char* sex; //性别
float score; //成绩
;
Struct Student zhangsan; //学生姓名张三
/****初始化*****/
Struct Student zhangsan=“nan”,100; //张三 男 成绩100
/****使用*****/
zhangsan. score =60; //将张三成绩赋值60
以上是关于C语言中结构体的中的字符串的内容如何修改?的主要内容,如果未能解决你的问题,请参考以下文章