Я пытался
printf("%d, %d\n", sizeof(char), sizeof('c'));
и получил 1, 4 в качестве вывода. Если размер символа один, почему 'c'
дает мне 4? Я думаю, это потому, что это целое число. Поэтому, когда я делаю char ch = 'c';
, происходит ли неявное преобразование под капотом этого 4-байтового значения в 1-байтовое значение, когда оно присваивается переменной char?