Jump to content
Fórum Script Brasil
  • 0

duvida nos modificadores de tipo


Arthuro_Araujo

Question

5 answers to this question

Recommended Posts

  • 0

um int pode ter o tamanho de 4 ou 2 bytes dependendo da arquitetura do computador.

Em C existe o operador sizeof(tipo) para saber o tamanho em bytes de um tipo de dados.

printf("%d", sizeof(int)); //em um windows(32 bits) pode ter o tamanho de 2 bytes, já em um sistema unix pode ter 4.

Isso varia, para isso existe os modificadores long e short.

long garante que o int terá 4 bytes.

short garante que o int terá 2 bytes.

ex: 2 bytes(no windows 32 bits)

int; //terá 2bytes

short int; //terá 2 bytes

long int; //terá 4 bytes

ex: 4 bytes(no Linux, ou windows 64 bits)

int; //terá 4 bytes

short int; //terá 2 bytes

long int; //terá 4 bytes

Para quẽ isso, um int de 2 bytes representa menos valores do que um de 4, ou incompatibilidade de um programa pois o int tem tamanho diferente.

Já o register.

O programa aloca um espaço na memória RAM do pc para suas variáveis, quando você usa o modificador register ela irá ser gravada em um registrador um local de rápido acesso, usado muito em variáveis de iteração.Se não houver espaço no registrador ele é alocada normalmente na RAM.

register int i; //coloca i em um registrador

for(i = 0; i <10; i++)

{

printf("%d", i);

}

Eu recomendo uma boa pesquisa pela internet, e recomendo o livro de Linguagem C Luís Damas, ele sabe ensinar mais facilmente do que a Bília em c/c++.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152k
    • Total Posts
      651.6k
×
×
  • Create New...