Por que você disse “simples” e “mudo”?
Eu tenho as respostas para você - muitas respostas. Aqui estão:
http://webcache.googleusercontent.com/search?q=cache:xv771GQfYxIJ:www.allinterview.com/showanswers/32404.html+C+what+determines+size+of+int&cd=4&hl=en&ct=clnk&gl=usDepois que lendo as respostas, eu darei minha opinião…
Mas primeiramente, porque sua interpretação é um trecho da edição do ANSI ò do linguagem de programação de C por K&R:
o “int será normalmente o tamanho natural para uma máquina particular. … Cada compilador está livre escolher o tamanho apropriado para sua própria ferragem, assunto somente o que a limitação que os shorts e os ints são pelo menos 16 bocados, longs é pelo menos 32 bocados, e curto é já não do que o int, que é já não do que por muito tempo.”
Minha resposta…
É o compilador, não o ósmio, não o processador central, não a memória, não a placa.
Em todo caso, se você se importa com o tamanho, a seguir você deve nunca usar o int. Eu digo raramente nunca. Este é um caso. É APROVADO para alguns contadores simples do para-laço. Você pode definir sua própria lima de user_types.h que faz um typedef para uint32, uint16, uint8, sint32, sint16, e sint8; e se aplicável, uint24, uint64, sint24 e sint64. Então como você se transporta de um processador a outro, apenas #if definido (PROCESSOR_NAME) para começ o typedef correto para essa plataforma. Eu não confiaria em tipos 64-bit do inteiro embora desde que não pode haver um equivalente em seu compilador.