vak: (Улыбка)
[personal profile] vak
Например:

if (sizeof('0') == sizeof(0))
    printf("Hello, C!\n");
else
    printf("Hello, C++!\n");

Date: 2012-12-21 03:35 (UTC)
From: [identity profile] archaicos.livejournal.com
В железе не выходит, а в компиляторе могли бы и сделать. На самом деле, по большей части там наплевать на CHAR_BIT=16. Только когда начинаешь работать с сырыми данными, текстовыми файлами или когда память кончается, приходится вручную паковать и распаковывать. DSP задачи (ради которых и делали процессор) от этого не страдают.

Date: 2012-12-21 05:52 (UTC)
spamsink: (Default)
From: [personal profile] spamsink
Или так, или sizeof(int) определяет, на сколько нужно умножать смещение в массиве целых, чтобы получить смещение к указателю. Чем TMS320 принципиально отличается от любой другой словной машины, на которой могло бы быть то же самое sizeof(int) == 1, неясно.

Date: 2012-12-22 01:32 (UTC)
spamsink: (Default)
From: [personal profile] spamsink
Ну вот. Будь на такой машине C++, его будет невозможно отличить от С.