Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Rich_crazy2 en 21 Noviembre 2011, 01:54 am



Título: De C++ a C
Publicado por: Rich_crazy2 en 21 Noviembre 2011, 01:54 am
Como puedo pasar este fragmento a lenguaje C, me ayudan?

Código
  1.                                   cout<<vtope->placa<<" , ";
  2. cout<<vtope->propietario<<" , ";
  3. cout<<vtope->marca<<",";
  4. cout<<vtope->color<<" \n";
  5.  


Título: Re: De C++ a C
Publicado por: x64core en 21 Noviembre 2011, 03:15 am
 :huh:

vtope, propietario,marca,color son punteros me imagino no :|
y cout  es una funcion que viene en la libreria iostream no...
eso es C...


Título: Re: De C++ a C
Publicado por: Ferno en 21 Noviembre 2011, 03:46 am
iostream es C++.
Los cout se reemplazan por printf, los cin por scanf (aunque la lectura de datos ofrece bastantes opciones, la standard es scanf).
Estas funciones vienen en la librería stdio.h
Librería standard input/output del lenguaje de programación C.


Título: Re: De C++ a C
Publicado por: Rich_crazy2 en 21 Noviembre 2011, 03:54 am
Se que cout lo convierto a printf... Y claro que son punteros
Pero como quedaría??
printf( vtope->placa)???


Título: Re: De C++ a C
Publicado por: Ferno en 21 Noviembre 2011, 04:05 am
Depende de que tipo sea tu variable.
Te doy un ejemplo.

Código
  1. #include <stdio.h>
  2.  
  3. int main (int argc, char* argv[])
  4. {
  5. int var = 5;
  6.  
  7. printf("El valor de mi variable es %d",var);
  8. return 0;
  9. }

%d --> int
%f  --> float
%c --> char
%s --> array of char.

Y hay varios más.


Título: Re: De C++ a C
Publicado por: Rich_crazy2 en 21 Noviembre 2011, 04:25 am
Depende de que tipo sea tu variable.
Te doy un ejemplo.

Código
  1. #include <stdio.h>
  2.  
  3. int main (int argc, char* argv[])
  4. {
  5. int var = 5;
  6.  
  7. printf("El valor de mi variable es %d",var);
  8. return 0;
  9. }


Esto lo entiendo pero no se que quiere decir en lo que pregunte, es decir, en los

                                   cout<<vtope->placa<<" , ";
Que se hace exactamente, se imprimirá lo que se esta apuntando????
 



Título: Re: De C++ a C
Publicado por: Ferno en 21 Noviembre 2011, 04:30 am
No entiendo bien tu inquietud.
Pero sí, se imprimirá lo que sea que contenga "vtope->placa".


Título: Re: De C++ a C
Publicado por: Rich_crazy2 en 21 Noviembre 2011, 04:37 am
Es eso!!! ;D
No sabia que imprimía... Oie me puedes decir como quedaría el printf de vtope->placa si es que se imprimirá lo que tiene guardado???


Título: Re: De C++ a C
Publicado por: Ferno en 21 Noviembre 2011, 04:38 am
Decime el tipo de dato que sea vtope->placa. No posteaste el code completo.
Dependiendo de eso, el código será diferente.
El parámetro que va luego del "%" cambia dependiendo del tipo que se imprimirá.


Título: Re: De C++ a C
Publicado por: Rich_crazy2 en 21 Noviembre 2011, 04:52 am
Te mando como MP el codigo, vale??  El codigo que te enviare lo estoy pasando a C porque esta en C++


Título: Re: De C++ a C
Publicado por: Queta en 21 Noviembre 2011, 17:55 pm
¿Por qué el código completo? Como ya dijo Ferno solamente tienes que mirar el tipo de dato de placa.

los cin por scanf (aunque la lectura de datos ofrece bastantes opciones, la standard es scanf).

¿Estándar? Estándar son todas las funciones de la librería de C.


Título: Re: De C++ a C
Publicado por: Ferno en 21 Noviembre 2011, 19:54 pm
¿Estándar? Estándar son todas las funciones de la librería de C.

Sí, me expresé mal. Lo que quería decir en realidad es que scanf es la que generalmente se utiliza para empezar, y es la más análoga a cin.


Título: Re: De C++ a C
Publicado por: terym en 21 Noviembre 2011, 20:25 pm
hola disculpen soy nueva en esto y me encontre con este foro q me parecio interesante y creo q me podrian ayuda estoy implementando una pila
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <conio.h>


  /* declaracion */
struct tpila{
  int clave;
  struct tpila *sig;
};
   /* prototipos e implementacion */

void crear(struct tpila **pila);
int vacia(struct tpila *pila);
void apilar(struct tpila *pila, int elem);
int desapilar(struct tpila *pila,int *elem);
void imprimirpila( struct tpila *ptrActual,struct tpila *pila);


void imprimirpila( struct tpila *ptrActual,struct tpila *pila)
{


    printf( "La pila es:\n\n" );


    while ( ptrActual != NULL) {
        printf( "%d -> ", ptrActual->clave );
       ptrActual= pila->sig;
       pila->sig= ptrActual;
       system("pause");



    }
     printf( "apunta a null\n" );


}




void crear(struct tpila **pila)
{  *pila = (struct tpila *) malloc(sizeof(struct tpila));

  (*pila)->sig = NULL;

  printf("pila creada\n");
}

int vacia(struct tpila *pila){
  return (pila->sig == NULL);
}

void apilar(struct tpila *pila, int elem){
  struct tpila *nuevo;

  nuevo = (struct tpila *) malloc(sizeof(struct tpila));


  nuevo->clave = elem;
   nuevo->sig = pila->sig;
  pila->sig = nuevo;
}

 int desapilar(struct tpila *pila,int *elem){
  struct tpila *aux;


  aux = pila->sig;
  *elem= aux->clave;
  pila->sig = aux->sig;
  free(aux);
  return *elem;
}

   /* programa de prueba */
int main(void)
{
  struct tpila *pila;
  int elem,opc,reg;
  crear(&pila);

do{
  printf("que deseas hacer  1)apilar 2)desapilar 3)imprimir\n");
  scanf("%d",&opc);


  switch(opc){

    case 1:

    printf("introduce el numero a apilar");
      scanf("%d",&elem);
     apilar(pila,elem);
   printf("pulse la tecla 5 para regresar al menu principal");
    scanf("%d",&reg);
    break;

    case 2:
    if(!vacia(pila)){
     desapilar(pila,&elem);
     printf( "elemento retirado\n");
    }
                else
                    printf( "La pila esta vacia\n" );
                break;

    case 3:
    if ( !vacia( pila ) )
    imprimirpila( pila );
                else
                    printf( "La pila esta vacia\n" );
                    printf("pulse la tecla 5 para regresar al menu principal");
    scanf("%d",&reg);
                break;

    }

}
  while(reg==5);
return 0;



}
 les vuelvo a comentar soy principiante si alguien me podri ayudar les agradeceria mucho el error esta ala hora de imprimir


Título: Re: De C++ a C
Publicado por: terym en 21 Noviembre 2011, 20:29 pm
le dejo mi correoo  terezza_31@hotmail.com por si alguien me pudiese ayudar