C/Visual C - De Pascal a C

 
Vista:

De Pascal a C

Publicado por Alvaro (10 intervenciones) el 12/06/2005 13:43:20
Hola, soy nuevo en el C, pero vengo de Pascal, me gustaria saber como se hacen los "case" y los "gotoxy" de Pascal en C.
Ya de paso tambien preguntarles si conocen algun traductor de Pascal a C, y donde lo puedo conseguir.

Gracias.

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:De Pascal a C

Publicado por Max (50 intervenciones) el 12/06/2005 14:38:58
swich()
{
case:{
lo que quieras hacer // sitienes mas de una linea entre llaves como un if en pascal
};

}

y para el gotoxy si no me equivoco es lo mismo ... pero no te olvides de incluir conio.h ya que esta libreria posee esta y mas funciones...

espero que te sirba.
salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:De Pascal a C

Publicado por fernando.gomez (1603 intervenciones) el 13/06/2005 19:04:42
Dos observaciones. Primero, después de incluir las sentencias en cada case:, tienes que agregar una sentencia break; de no hacerlo, el flujo del programa continuará con el case que le siga.

Por otro lado, no hay función gotoxy en C, al menos, no una estándar. La que te menciona Max es una extensión que han hecho terceros, como Borland, pero no se te garantiza que esté en todos los compiladores (p.e. Microsoft Visual C no tiene un gotoxy). Además, el archivo <conio.h> tampoco es estándar.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:De Pascal a C

Publicado por Alvaro (10 intervenciones) el 13/06/2005 19:32:41
Muchisimas gracias por lo del break, estaba empezando a volverme loco.
Gracias
Gracias
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

ahora con los "IF"

Publicado por Alvaro (10 intervenciones) el 14/06/2005 22:14:22
Gracias otra vez, pero ahora tengo problemas con los "IF".
Yo los hago asi:
p->q
IF(p) q;
pero no se por que siempre hace "q" aunque no se cumpla "p".
Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ahora con los

Publicado por fernando.gomez (1603 intervenciones) el 14/06/2005 23:05:51
P es un puntero. Si está apuntando a cualquier dirección de memoria, se evaluará como TRUE. Si apunta a ningún lado (p.e. NULL o 0) evaluará a FALSE. Por defecto, un puntero no se inicializa a NULL, sino a una dirección de memoria aleatoria. Por ejemplo:

p = 0;
if (p) {
q;
}

Esta es la única forma en la que q no se ejecutará.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ahora con los

Publicado por Alvaro (10 intervenciones) el 14/06/2005 23:32:17
Perdona, pero creo que me explicado mal. P y Q son ejemplos de sentencias, he puesto P y Q por que suelen ser las que se usan en los ejemplos de logica binaria. por eso puse P->Q (p implica q) que en logica se corresponden con los if de la programacion. Los puse por que pense que iva a ser mas sencillo, pero parece que no.
Luego lo que yo quiero es:

IF (condicion) { sentencias };

el problema es que se me ejecutan siempre las "sentencias".

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ahora con los

Publicado por fernando.gomez (1603 intervenciones) el 15/06/2005 01:17:09
Vaya, perdón, más bien te entendí mal... =P

Bueno, ¿podrías enviarme la condición que estás evaluando? Ahí sí no hay pierde:

if (condicion) {
//sentencias
}

tal como tú lo mencionaste. Entonces quiere decir que condicion siempre se está evaluando a no-cero. No te podría decir más sin ver la condición... =|

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ahora con los

Publicado por Alvaro (10 intervenciones) el 15/06/2005 17:59:45
El tema de los if creo que ya esta resuelto. Era que al estar acostumbrado en pascal a preguntar con "=" se me habia olvidado que en C se pregunta con "==".

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ahora con los

Publicado por fernando.gomez (1603 intervenciones) el 15/06/2005 20:14:18
Ahm, sí, tiene sentido, toda vez que el operador = evalúa a true cuando se pudo asignar el r-value al l-value, y false en caso contrario (p.e. falta de memoria).

=P curiosamente a mí me pasó algo parecido cuando empleo Maple... su sintaxis es similar a Delphi, en particular con los operadores de comparación y asignación = y :=. Me llevó mucho tiempo acostumbrarme... =D
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar