2
我正在通过C中的套接字发送加密数据。一切工作正常,直到我意识到发送的数据的大小比它应该大的多。片的下面的代码描述的情况:通过C socket发送原始二进制数据?
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int main() {
char temp[100], buffer[100];
int n = 1234567890;
sprintf(temp, "%d", n);
printf("Original n has size: %d\n", sizeof(n)); // 4
printf("Buffer size: %d\n", strlen(temp)); //10
printf("Buffer: %s", temp);
}
问题是原来的号码被存储为一个4字节整数,而缓冲存储由字符的字符,所以什么将要通过套接字发送不是4个字节,而是10个一个字节的字符。
我不知道是否有任何方式发送二进制数据为原料?