Autor Tema: no conozco la sintaxis para que un array vacié sus valores  (Leído 2005 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado spaceluis

  • PIC10
  • *
  • Mensajes: 42
no conozco la sintaxis para que un array vacié sus valores
« en: 13 de Marzo de 2013, 01:50:51 »
hola que que tal, pues necesito que mi arreglo

int arreglo[]={10,15,20} vacie sus valores de 1 en 1 a mi variable x, pero que lo haga condicionado yo tengo el siguente codigo y no esta funcionando siempre nadames entrega el primer valor y ahi se queda. como puedo hacelo?

Código: [Seleccionar]
if(y==1)
         {
         y=0;
         actual=arreglo[i];
         j++;
         if(j==1000)
          {
          //j=0;
          i++;
          }

Desconectado fuente

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 571
Re: no conozco la sintaxis para que un array vacié sus valores
« Respuesta #1 en: 13 de Marzo de 2013, 04:52:12 »
Tal y como está, por este código únicamente pasará cuando y valga 1. No estás iterando en ningún momento.

Desconectado _LAB_

  • PIC10
  • *
  • Mensajes: 36
Re: no conozco la sintaxis para que un array vacié sus valores
« Respuesta #2 en: 13 de Marzo de 2013, 06:52:10 »
Exacto!. como dice fuente. ahí no haces nada
Algo asi deberías tener...
Código: [Seleccionar]
int arreglo[3]={x1,x2,x3};
if(y==1){
   for(i=0;i<3;i++){
      actual=arreglo[i];
      .....haz lo que necesites
   }
}
solo traspasará el valor de arreglo si y=1 caso contrario no hace nada...
Saludos

Desconectado ppyote

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 929
Re: no conozco la sintaxis para que un array vacié sus valores
« Respuesta #3 en: 13 de Marzo de 2013, 09:16:12 »
Corregidme si me equivoco pero creo que con arreglo ={0}; funciona...
PPyote... siempre estareis en mi corazon.... Te quiero Hermano...

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: no conozco la sintaxis para que un array vacié sus valores
« Respuesta #4 en: 13 de Marzo de 2013, 14:14:55 »
Código: C
  1. #include <string.h>
  2.  
  3. ...
  4.  
  5. memset( arreglo, 0, sizeof( arreglo ));
  6.  
  7. ...

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5544
    • Picmania by Redraven
Re: no conozco la sintaxis para que un array vacié sus valores
« Respuesta #5 en: 13 de Marzo de 2013, 15:47:24 »
Código: C
  1. #include <string.h>
  2.  
  3. ...
  4.  
  5. memset( arreglo, 0, sizeof( arreglo ));
  6.  
  7. ...

Esta es la forma que yo utilizo  :mrgreen:
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: no conozco la sintaxis para que un array vacié sus valores
« Respuesta #6 en: 13 de Marzo de 2013, 15:53:29 »
Hola, en casí todos los compiladores las funciones memset, memcpy, memcmp están implementadas en assembler y optimizadas para aprovechar las facilidades que proporciona la arquitectura, ejemplos de esto puede ser direccionamiento indirecto, direccionamiento con un registro como índice y post incremento, etc, etc.

Saludos !

Desconectado spaceluis

  • PIC10
  • *
  • Mensajes: 42
Re: no conozco la sintaxis para que un array vacié sus valores
« Respuesta #7 en: 18 de Marzo de 2013, 13:49:05 »
gracias a todos por sus respuestas!! son muy amables

Desconectado spaceluis

  • PIC10
  • *
  • Mensajes: 42
Re: no conozco la sintaxis para que un array vacié sus valores
« Respuesta #8 en: 18 de Marzo de 2013, 14:23:42 »
Exacto!. como dice fuente. ahí no haces nada
Algo asi deberías tener...
Código: [Seleccionar]
int arreglo[3]={x1,x2,x3};
if(y==1){
   for(i=0;i<3;i++){
      actual=arreglo[i];
      .....haz lo que necesites
   }
}
solo traspasará el valor de arreglo si y=1 caso contrario no hace nada...
Saludos



pic10 gracias por tu ayuda funciona asi como me dices, pero ahora tengo otro problema necesito tener cierto tiempo en cambio y cambio de valores es decir entre X1 y X2 tiene que haber por ejemplo 20 ms de diferencia, tienes alguna idea de como poder hacerlo?...tiene que ser un ciclo que cuando termine de pasar el ultimo valor regrese al primero...
« Última modificación: 18 de Marzo de 2013, 14:29:45 por spaceluis »