我想将字节接收到conbuf.buffer中。测试1或测试2都可以。我在printf语句中看不到任何值。我是否正确传递指针?我如何分配内存给结构中的char指针。访问结构C++中的char指针并分配内存
typedef struct cBuf
{
int size;
char *buffer;
} cbuf;
class A
{
cbuf conbuf;
void test();
}
void A::test()
{
int buffersize = 20;
char buf[buffersize];
conbuf.buffer = (char *)malloc(buffersize * sizeof(char *));
// test 1
int n = socket.receivebytes(conbuf.buffer, buffersize);
// test 2
//int n = socket.receivebytes(buf, buffersize);
//strcpy(conbuf.buffer, buf);
printf("conbuf.buffer %s \n", conbuf.buffer);
}
-1:你可以发布一些实际编译的代码吗? – 2012-03-20 17:38:10
什么确切的数据通过套接字发送? – Mark 2012-03-20 17:39:08
使用'std :: vector'代替手动内存分配。 – 2012-03-20 17:39:57