Redes

1534 palavras 7 páginas
Universidade São Francisco

Unidade Acadêmica da Área de Ciências Exatas e Tecnológicas

Tecnologia em Gestão de Sistemas Informatizados

Exercícios SO

1) Por que o código abaixo está errado?

void troca (int *i, int *j) {

int *temp;

*temp = *i; *i = *j; *j = *temp;

}

R: Quando se faz *temp = *i, copia-se o conteúdo de memória apontado pelo ponteiro i para o endereço apontado pelo ponteiro temp. Porém, o endereço onde temp aponta é lixo, uma vez que não foi inicializado.

Um ponteiro pode ser usado para dizer a uma função onde ela deve depositar o resultado de seus cálculos. Escreva uma função xxx que converta minutos em horas-e-minutos. A função recebe um inteiro mnts e os endereços de duas variáveis inteiras, digamos h e m, e atribui valores a essas variáveis de modo que m seja menor que 60 e que 60*h + m seja igual a mnts. Escreva também uma função main que use a função xxx.

#include

void xxx(int mnts, int *h, int *m){

*h = mnts/60; *m = mnts%60;
}

void main(){ int mnts,h,m;

printf("Entre com a quantidade de minutos que deseja converter: "); scanf("%d",&mnts);

xxx(mnts,&h,&m); printf("\nHoras: %d",h); printf("\nMinutos: %d",m);
}

Suponha que os elementos do vetor v são do tipo int e cada int ocupa 8 bytes no seu computador. Se o endereço de v[0] é 55000, qual o valor da expressão v + 3?

R: (v+3) aponta para o terceiro número inteiro. Pensando um pouco, sabemos que o endereço 55000 até o 55007 está sendo usado para o primeiro inteiro, pois ocupa 8 posições. Dessa forma, o terceiro inteiro estará no endereço 55024.

O que há de errado com o seguinte trecho de código?

char *a, *b;

a = "abacate"; b = "uva"; if (a < b)

printf ("%s vem antes de %s no dicionário", a, b);

else

printf ("%s vem depois de %s no dicionário", a, b);

R: Da mesma forma que o exercício 1, os ponteiros a e b não foram alocados, ou seja, apontam para posições de memória desconhecidas, ou que já estão sendo

Relacionados

  • redes
    1439 palavras | 6 páginas
  • Rede
    3641 palavras | 15 páginas
  • Redes
    4835 palavras | 20 páginas
  • Redes
    25948 palavras | 104 páginas
  • redes
    1736 palavras | 7 páginas
  • Rede
    4901 palavras | 20 páginas
  • Redes
    3241 palavras | 13 páginas
  • Redes
    729 palavras | 3 páginas
  • redes
    1668 palavras | 7 páginas
  • Redes
    8748 palavras | 35 páginas