Página 1 de 7 123456 ... ÚltimoÚltimo
+ Responder ao Tópico



  1. #1
    Ola,

    Uma vez eu vi um site que mostrava várias formas trocar o valor de duas variaveis em C, sem usar uma variavel auxiliar! Alguem ja viu alguma coisa desse tipo?

    não lembro direito como era, mas acho que sempre tinha uma atribuicao dentro de uma expressao, alguma coisa desse tipo: a=a+(b-(b=a)), mas isso nao funciona...

    Se alguem sabe como fazer ou ja viu isso em algum lugar por favor poste o link aqui!


    valeu!

  2. explica melhor oq vc ta querendo, q ficou meio confuso



  3. #3
    Ok! vou explicar melhor!

    pra trocar o valor de duas variaveis em C usa-se uma variavel auxiliar, por exemplo:

    Código :
    int a, b, aux;
     
    a=2;
    b=4;
     
    printf("a=%d b=%d\n", a, b);
     
    /*troca*/
    aux=a;
    a=b;
    b=aux;
     
    printf("a=%d b=%d\n");

    a saida desse programa vai ser:

    Código :
    2 4
    4 2

    mas como fazer isso sem usar a variavel aux?

  4. #4
    _ivy_
    Ois,

    Deve ter algum comando que faca isso atraves de um registrador, mas acho que nao e' pra todas as plataformas.
    (porque, se tu pensar bem, e' so' trocar os enderecos correspondentes as variaveis: largar o endereco de uma em um registrador, move o endereco de uma pra outra e move o endereco do registrador pra uma, confuso neh.. rss.. ).

    Eu acho que cheguei a ver um comando que fazia exatamente isso, mas nao era portavel...

    Mas eu realmente nao vejo utilidade pra isso.. uma variavel auxiliar eh tao inofenciva

    ainda mais se vc usar ponteiros... ou se a sua variavel for menor que um long...

    []'s



  5. soma os dois valores, e diminui dele mesmo...

    a=((a+b)-a)
    b=((a+b)-b)






Tópicos Similares

  1. Respostas: 2
    Último Post: 31-08-2012, 17:17
  2. Troca de senha via web em php
    Por rfm no fórum Linguagens de Programação
    Respostas: 0
    Último Post: 22-05-2005, 12:14
  3. Duvida em troca de estrutura Wireless.
    Por clistenis no fórum Redes
    Respostas: 2
    Último Post: 30-03-2005, 10:36
  4. Troca de mensagens Win Linux
    Por Celio no fórum Servidores de Rede
    Respostas: 1
    Último Post: 08-10-2003, 09:50
  5. Troca de senha em virtual domains
    Por no fórum Servidores de Rede
    Respostas: 2
    Último Post: 22-10-2002, 14:17

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L