Ну, тогда нужно учитывать архитектуру процессора, хотя очень маловероятно, что автор вопроса (я его немного знаю :) использует персоналки не с Intel-совместимыми процессорами :)
Кроме того, объясню, зачем я написал мой ответ. Я посмотрел другие ответы, и они оказались уж слишком навороченными. Зачем делать сложно, если можно проще?
Конечно, для того, чтоб полностью быть уверенным, нужно смотреть файл LIMITS.H (это чтоб узнать разрядность short) и WTYPES.H (если пишется программа под Windows).
И, конечно же, лучше всего использовать типы
SHORT - вместо short,
WORD - вместо unsigned short,
BYTE - вместо unsigned char,
и т.д.
Тогда при переходе на другую платформу будет проще.