以下のプログラムをご確認ください
#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
文字列の長さを2ではなく4にする方法は、短い整数値をメモリに入れているため、2バイトのメモリで占有する必要があります.しかし、4バイトをどのように取っているか.
各バイトが入力から 2 0 1 3 を取得する方法。一方のバイトでは 20、別のバイトでは 13 です。
あるバイトに20、別のバイトに13を入れたいのですが、その方法を教えてください。
どなたか回答よろしくお願いします。