2个回答
展开全部
char s[2 * 4 + LEN + 1]; // LEN必须足够大,以便装入串str
int a = 3,b = 5;
char str]] = "abc";
(int)*(s) = a;
(int *)(s + 4) = b;
strcpy(s + 8,str);
追问
我是在C#里
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
byte buf[100] = {0};
int a = 101;
int b= 197;
char *str = "Hello World!";
int pos = 0;
memcpy(buf+pos, &a, sizeof(int));
pos += sizeof(int);
memcpy(buf+pos, &b, sizeof(int));
pos += sizeof(int);
memcpy(buf+pos, str, strlen(str));
pos += strlen(str);
// 读
int a1 = 0;
int a2 = 0;
char buf1[100] = {0};
int pos1 = 0;
memcpy(&a1, buf+pos, sizeof(int));
pos1 += sizeof(int);
memcpy(&a2, buf+pos, sizeof(int));
pos1 += sizeof(int);
memcpy(buf1, buf+pos,pos-pos1);
buf1[pos-pos1] = 0;
int a = 101;
int b= 197;
char *str = "Hello World!";
int pos = 0;
memcpy(buf+pos, &a, sizeof(int));
pos += sizeof(int);
memcpy(buf+pos, &b, sizeof(int));
pos += sizeof(int);
memcpy(buf+pos, str, strlen(str));
pos += strlen(str);
// 读
int a1 = 0;
int a2 = 0;
char buf1[100] = {0};
int pos1 = 0;
memcpy(&a1, buf+pos, sizeof(int));
pos1 += sizeof(int);
memcpy(&a2, buf+pos, sizeof(int));
pos1 += sizeof(int);
memcpy(buf1, buf+pos,pos-pos1);
buf1[pos-pos1] = 0;
追问
C#中没有memcpy吧
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询