#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct head
{
	char ChunkID[4];
	long int ChunkSize;
	char Format[4];

	char SubChunkID[4];
	long int SubChunkSize;
	short int AudioFormat;
	short int NumChannels;
	long int SampleRate;
	long int BytesRate;
	short int  BlockAlign;
	short int BitsPerSample;

	char SubChunk2ID[4];
	long int SubChunk2Size;
}head;

void get_it(char * ptr, int size)
{
	char * dest = (char*) ptr;
	int i;
	for (i=0;i<size;i++)
	{
		*(dest+i) = getchar();
	} 
}

int take_it(char * ptr, int size)
{
	int dest = 0;
	dest = (int)*ptr;
	if (size > 1)
	{
		dest += 256 * ((int)*(ptr+1));
	}
	return dest;
}

int main(void)
{
	get_it((char*)&head,44);

	printf(head.ChunkID);
	printf("\n%d\n",head.ChunkSize);
	printf(head.Format);
	printf("\n");
	printf(head.SubChunkID);
	printf("\n");
	printf("%d\n",head.SubChunkSize);
	printf("%d\n",head.AudioFormat);
	printf("%d\n",head.NumChannels);
	printf("%d\n",head.SampleRate);
	printf("%d\n",head.BytesRate);
	printf("%d\n",head.BlockAlign);
	printf("%d\n",head.BitsPerSample);
	printf(head.SubChunk2ID);
	printf("\n%d\n",head.SubChunk2Size);


	return 0;
}
