Novidade: Metaperguntas agora no próprio Umamão

3

O modificador register em C garante que uma variável seja alocada a um registrador?

flag

1 Answer

4

Não necessariamente.

Pode ser que em determinado ponto da execução de um código, por alguma razão, haja uma quantidade de variáveis a serem alocadas a registradores maior do que a quantidade de registradores disponíveis. Isso fará com que algumas variáveis (normalmente as menos utilizadas) sejam jogadas para a memória principal, usem elas o modificador register ou não.

link|flag
Isso, o "register" é só um pedido para o SO tentar alocar a variável em um registrador, o SO não é obrigado a atender esse pedido. – Lokura Mar 6 at 15:37
O SO ou o compilador? – Helder Ribeiro Mar 7 at 6:49
É o compilador. – Pirata Mar 8 at 23:35
Sim, erro meu, é o compilador quem aloca os registradores... horas e horas estudando algoritmos de alocação de registradores pra MC910 e já tinha esquecido. =P – Lokura Mar 9 at 13:03

Your Answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.