Wyrzuca przy zmiennej char

0
#include<stdio.h>    

main()

{

char x;
double b;

b = -2;

if (b < 0.0) {
x = '-';
} else x = '+';

printf("%s" ,x);

return 0;
}


Jest to część programu, z którą mam problem, ponieważ przez nią wykonuje się tylko fragment. W momencie przypisywania zmiennej x znaku '-' lub '+' wyrzuca program.

4

printf("%s" ,x);
powinno być
printf("%c" ,x);
Wyświetlasz jako string co oznacza że printf leci aż znajdzie znak '\0'.
Czyli wyświetla wszystko co jest po zmiennej 'x', aż dochodzi do momentu, w którym do określonej pamięci nie ma dostępu.

0

Dziękuję :)

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