请检查以下程序
#include <stdio.h>
#include<stdlib.h>
int main()
{
char *Date= NULL;
unsigned short y=2013;
Date = malloc(3);
sprintf((char *)Date,"%hu",y);
printf("%d %d %d %d %d \n",Date[0],Date[1],Date[2],Date[3],Date[4]);
printf("%s %d %d",Date,strlen(Date),sizeof(y));
}
output:
50 48 49 51 0
2013 4 2
Run Code Online (Sandbox Code Playgroud)
我如何得到字符串长度4而不是2,因为我将一个短整数值放入内存,所以它应该占用2字节的内存.但它是如何占用4字节.
每个字节如何从输入获得2 0 1 3,而在一个字节中为20,在另一个字节中为13.
我想把20到1个字节和13个放到另一个字节.怎么做.请告诉我
请给出一些答案.