Dodawanie bajtow

0

Witam, mam problem napisalem program ktory reprezentuje binarnie podana liczbe int, jednak nie mam pojecia jak dodac do niej 2 bajty, czy moglby mnie ktos naprowadzic? Z gory dziekuje

#include <stdio.h>
#include <conio.h>

struct typ_bity
{
	unsigned a: 1;
	unsigned b: 1;
	unsigned c: 1;
	unsigned d: 1;
	unsigned e: 1;
	unsigned f: 1;
	unsigned g: 1;
	unsigned h: 1;
};

union typ_klawisz
{
	int i;
	struct typ_bity bity;
}klawisz;

int main()
{
	printf("Podaj liczbe dziesietna : ");
	scanf("%d", &klawisz.i);
	printf("\n");
	
	klawisz.bity.h ? printf("1") : printf("0");
	klawisz.bity.g ? printf("1") : printf("0");
	klawisz.bity.f ? printf("1") : printf("0");
	klawisz.bity.e ? printf("1") : printf("0");
	klawisz.bity.d ? printf("1") : printf("0");
	klawisz.bity.c ? printf("1") : printf("0");
	klawisz.bity.b ? printf("1") : printf("0");
	klawisz.bity.a ? printf("1") : printf("0");
	
	return 0;
}
1

Czy struct typ_bity bity[2]; nie wystarczy?
albo nawet lepiej struct typ_bity bity[sizeof(int)];
albo nawet lepiej struct typ_bity bity[ sizeof(int) * 8 / CHAR_BIT ]

0

a wiesz moze jak zakodowac liczbe typu double poprzez dodanie do niej 2 bajtow? bo siedze od pare h i za cholere nie wiem jak mam to zrobic, czy wystarczy jakos zmodyfikowac ten kod co tutaj mam?

a odnosnie tego 1 to blad wyskakuje
19 40 [Error] 'CHAR_BIT' was not declared in this scope
28 13 [Error] 'union typ_klawisz' has no member named 'bity'

union typ_klawisz
{
    int i;
    struct typ_bity bity[sizeof(int)*8/CHAR_BIT];
}klawisz;
0

Czy ten program dobrze dodaje 2 bajty do zmiennej double? Bo w sumie nie wiem jak to zweryfikowac.

#include <stdio.h>

union unia
{
	double myDouble;
	unsigned char myChars[sizeof(double)];
}test;

int main()
{
	double liczba;
	printf("Podaj liczbe double : ");
	scanf("%lf", &test.myDouble);
	
	for(int i = 0; i < sizeof(double); i++)
	{
		printf("%d ", (int)test.myChars[i] + 2);
	}
	return 0;
}

consola przed dodaniem screenshot-20190508234712.png
consola po dodaniu +2 : screenshot-20190508234607.png

1 użytkowników online, w tym zalogowanych: 0, gości: 1