c - 如何将字符串加载到结构中?

标签 c string unix struct structure

我有一个客户端和一个服务器。我使用UDP。 (C/Unix)

在服务器中我确实有一个结构:

typedef struct Header {
int seqid;
int len;
char payload[100];
}
...
char test[100];
struct Header package;
package.seqid = 1;
package.len = 64;
strcpy(package.payload, test);
sendto(sockfd, &package, 100, 0, (struct sockaddr*)&cliaddr, sizeof(cliaddr));

在客户端中我确实有相同的结构:

struct Header* myrepos;
...
recvfrom(sockfd, recvline, 100, 0, NULL, NULL);
//recvline is a char[100]
...

我想将提交的结构(由服务器提交)加载到“myrepos”中。 我怎样才能做到这一点?

使用

*angel = (struct Header*)&recvline;

导致编译器错误。

我不确定我的方法是否正确或者它是否会发生。 还有其他解决方案吗?

谢谢!

最佳答案

1: sendto(sockfd, &package, sizeof(struct Header), 0, (struct sockaddr*)&cliaddr, sizeof(cliaddr));

2:recvline = new char [sizeof(struct Header)];

3:myrepos = (struct Header *)recvline;

关于c - 如何将字符串加载到结构中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10581408/

相关文章:

c - 如何将一个库的全局变量使用到另一库

python - 将美式分钟字符串转换为整数值

linux - 如何使用 IF 针对一个变量测试两个字符串

regex - 使用正则表达式过滤具有特定文件扩展名的文件

c++ - 使用c++修改的未关闭的文本文件安全吗?

objective-c - C 或 ObjC 用于 iOS 上的实时光线追踪器?

c++ - 使用dsp和图像处理的巡线机器人

c - 以 HDF5 格式表示可变长度二维数组?

c# - ASP.NET Web 控件中的 Html 编码

c++ - 如何在 C++ 中将二维数组转换为单个字符串