高分求救,字符串赋值给结构体
#include <stdio.h>
#include <string.h>
typedef struct _test
{
char a[3];
char b[3];
char c[3];
}test;
//去除右边空格
int trim_right(char *str, int len)
{
while (len > 0) {
if (str[len-1] != 0x20)
break;
--len;
}
str[len] = '\0';
return len;
}
int main(void)
{
char c[20] = "12 3456 ";
char d[20] = {0};
test t = {0};
memcpy(&t,c,20);
trim_right(t.a, sizeof(t.a));
trim_right(t.b,sizeof(t.b));
sprintf((char *)d, "a: %s\r\n", t.a);
sprintf((char *)d, "%sb: %s\r\n", d, t.b);
sprintf((char *)d, "%sc: %s\r\n",d, t.c);
puts(d);
return 0;
}
比如我有一个字符串12 3456 ,如何把这个字符串赋值给结构体,使得输出的结果是
a:12
b:345
c:6
目前只能输出
a: 12
b:345
c:
因为数组b的大小是3,所以只能把空格存放到数组c里导致数组c不能输出内容。想了很多方法都无法实现,请高手帮忙解答
相关推荐
结构体中数组成员赋值
用实例教你给结构体中数组成员赋值
C++结构体里面string类型赋值问题
#include<string> using namespace std; struct temp { string s; }; int main() { const string p=aaa; temp *q; q=(struct temp*)malloc(sizeof(struct temp)); q->s=p; } 上述那种情况的赋值会导致程序中断 需要用用new来分配内存,malloc不会调用结构函数 结构体内的string不定长,不能动态分配内存。 #include<string> using namespace std; stru
下面程序是定义一个结构体,并为其定义结构体变量,对其值输入、输出。
有五个学生,每个学生的数据包括学号,姓名,三门课的成绩
MATLAB 直接赋值构造字符串示例
本代码主要利用MATLAB工具实现MATLAB 直接赋值构造字符串示例,简单明了,易于理解
go语言结构体转换map、map转换结构体、json字符串转结构体、结构体数据转换到别的结构体
JSON包的妙用,一个函数完成几种数据结构转换方案 1.结构体转map 2.map转结构体 3.结构体数据转移到结构体 4.json字符串转结构体 package main import ( encoding/json fmt reflect ) type User struct { Name string `json:name` Age int `json:age` } func main() { //1、结构体转map user1:=User{} user1.Name=小明 user1.Age=18 mp:=make(map[string


