elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


  Mostrar Mensajes
Páginas: 1 2 3 [4]
31  Programación / Programación C/C++ / Re: Problema con violación de segmento en: 26 Julio 2011, 22:20 pm
Claro, vos decís que el error de octal me lo toma por el primer '0' del número?...
Claro, no lo pensé a eso...

De todas formas si, el hecho de las '/' es importante, aunque no hice una cadena muy grande como para que entren, jaja...
Igual son ejercicios pavos que estoy re/haciendo porque rindo un parcial y empecé de 0, jaja... Hay muchas cosas que las tenía bastante oxidadas :P

Ya de paso hago otra consulta:
Por ejemplo, yo definí una macro, supongamos:

#define T_INT 1;

si yo después, a esa macro la quiero comparar con una variable de tipo int también, que previamente fue ingresado su valor por teclado, ¿cómo se haría?...
Porque yo hice

if (valor == T_INT)
  printf("te imprimo algo");

y me tira error : error: expected ‘)’ before ‘;’ token

Código:
#define T_INT 1;
#define T_FLOAT 2;
#define T_STR 3;

union T_union{
int ival;
float fval;
char *sval;
};

int main(){
int valor;
union T_union u;
u.ival=22;
u.fval=22.69;
u.sval=(char *)malloc(sizeof(u.sval));
strcpy(u.sval,"NO ME LEAS");

printf("Ingrese un valor para invocar la lectura:\t");
scanf("%d\n",&valor);

if (valor == T_INT)
printf("El valor de ival es: %d\n",u.ival);
if (valor == T_FLOAT)
printf("El valor de fval es: %f\n",u.fval);
if (valor == T_STR)
printf("El contenido de sval es: %s\n",u.sval);

return 0;
}

Ahí dejé el código para complicar menos las cosas...
32  Programación / Programación C/C++ / Re: Problema con violación de segmento en: 26 Julio 2011, 22:08 pm
Gracias, gracias y nuevamente MIL gracias...

Con el tema de la fecha... Cuando lo pongo en int, long int o cualquier int que se me ocurra me tira el siguiente error de compilación:

Citar
error: invalid digit "9" in octal constant

Me suena rarisimo, no sé porqué dice que es octal, porque nada que ver... Por eso lo hice como cadena :P
33  Programación / Programación C/C++ / Re: Problema con violación de segmento en: 26 Julio 2011, 21:45 pm
Desde ya, MUCHÍSIMAS gracias, me ha vuelto loco durante todo el seminario este error... Ahora ya no me lo tira más, acá dejo el código modificado para que me digan si de la forma que lo solucioné está bien o es una falta de respeto a los ojos de un programador de C :P

Código:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

typedef struct {
char *nombre;
char *apellido;
char *fecha;
char *legajo;
char *tipDoc;
int DNI;
}Alumno;

int main(){
Alumno alu,alu2;
alu.nombre= malloc(sizeof(alu.nombre));
alu.apellido= malloc(sizeof(alu.apellido));
alu.fecha= malloc(sizeof(alu.fecha));
alu.legajo= malloc(sizeof(alu.legajo));
alu.tipDoc= malloc(sizeof(alu.tipDoc));
strcpy(alu.nombre,"Esteban");
strcpy(alu.apellido,"Gonzalez");
strcpy(alu.fecha,"02111991");
strcpy(alu.legajo,"10662/3");
strcpy(alu.tipDoc,"DNI");
alu.DNI=36363023;

alu2.nombre= malloc(sizeof(alu2.nombre));
alu2.apellido= malloc(sizeof(alu2.apellido));
alu2.fecha= malloc(sizeof(alu2.fecha));
alu2.legajo= malloc(sizeof(alu2.legajo));
alu2.tipDoc= malloc(sizeof(alu2.tipDoc));

alu2=alu;

printf("El nombre del alu es: %s, el de alu2 es: %s\n",alu.nombre,alu2.nombre);
printf("El apellido del alu es: %s, el de alu2 es: %s\n",alu.apellido,alu2.apellido);
printf("La fecha del alu es: %s, el de alu2 es: %s\n",alu.fecha,alu2.fecha);
printf("El legajo del alu es: %s, el de alu2 es: %s\n",alu.legajo,alu2.legajo);
printf("El tipo de documento del alu es: %s, el de alu2 es: %s\n",alu.tipDoc,alu2.tipDoc);
printf("El DNI del alu es: %d, el de alu2 es: %d\n\n\n",alu.DNI,alu2.DNI);

strcpy(alu.nombre,"Jose");

printf("El nombre del alu es: %s, el de alu2 es: %s\n",alu.nombre,alu2.nombre);
printf("El apellido del alu es: %s, el de alu2 es: %s\n",alu.apellido,alu2.apellido);
printf("La fecha del alu es: %s, el de alu2 es: %s\n",alu.fecha,alu2.fecha);
printf("El legajo del alu es: %s, el de alu2 es: %s\n",alu.legajo,alu2.legajo);
printf("El tipo de documento del alu es: %s, el de alu2 es: %s\n",alu.tipDoc,alu2.tipDoc);
printf("El DNI del alu es: %d, el de alu2 es: %d\n",alu.DNI,alu2.DNI);

return 0;
}
34  Programación / Programación C/C++ / Problema con violación de segmento en: 26 Julio 2011, 20:53 pm
Bueno, mi problema es el siguiente:
Desde que empecé con C, el profesor me recomendó usar Linux.
El tema es que SIEMPRE que uso punteros, y toco la memoria, cuando compilo me sale "Violación de segmento"...

El profesor me dijo "El problema no es Linux, el problema es el programador" ¬¬

En fin, no encuentro ayuda, sé que estoy haciendo algo mal, pero no sé qué... Sé que Linux no te deja tocar la memoria como si lo hace Windows (el cual no me genera problema con esto)...

En fin, acá dejo un código que justo estaba haciendo hoy, es muy simple, compila excelente, pero dice el famoso "violación de segmento"...

Código:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

typedef struct {
char *nombre;
char *apellido;
char *fecha;
char *legajo;
char *tipDoc;
int DNI;
}Alumno;

int main(){
Alumno alu,alu2;
malloc(sizeof(alu.nombre));
malloc(sizeof(alu.apellido));
malloc(sizeof(alu.fecha));
malloc(sizeof(alu.legajo));
malloc(sizeof(alu.tipDoc));
strcpy(alu.nombre,"Esteban");
strcpy(alu.apellido,"Gonzalez");
strcpy(alu.fecha,"02111991");
strcpy(alu.legajo,"10662/3");
strcpy(alu.tipDoc,"DNI");
alu.DNI=36363023;

malloc(sizeof(alu2.nombre));
malloc(sizeof(alu2.apellido));
malloc(sizeof(alu2.fecha));
malloc(sizeof(alu2.legajo));
malloc(sizeof(alu2.tipDoc));

alu2=alu;

printf("El nombre del alu es: %s, el de alu2 es: %s\n",alu.nombre,alu2.nombre);
printf("El apellido del alu es: %s, el de alu2 es: %s\n",alu.apellido,alu2.apellido);
printf("La fecha del alu es: %s, el de alu2 es: %s\n",alu.fecha,alu2.fecha);
printf("El legajo del alu es: %s, el de alu2 es: %s\n",alu.legajo,alu2.legajo);
printf("El tipo de documento del alu es: %s, el de alu2 es: %s\n",alu.tipDoc,alu2.tipDoc);
printf("El DNI del alu es: %d, el de alu2 es: %d\n\n\n",alu.DNI,alu2.DNI);

strcpy(alu.nombre,"Jose");

printf("El nombre del alu es: %s, el de alu2 es: %s\n",alu.nombre,alu2.nombre);
printf("El apellido del alu es: %s, el de alu2 es: %s\n",alu.apellido,alu2.apellido);
printf("La fecha del alu es: %s, el de alu2 es: %s\n",alu.fecha,alu2.fecha);
printf("El legajo del alu es: %s, el de alu2 es: %s\n",alu.legajo,alu2.legajo);
printf("El tipo de documento del alu es: %s, el de alu2 es: %s\n",alu.tipDoc,alu2.tipDoc);
printf("El DNI del alu es: %d, el de alu2 es: %d\n",alu.DNI,alu2.DNI);

return 0;
}


Gracias de antemano...
35  Programación / Programación C/C++ / Re: ayuda con un ejercicio :( PORFAVOR SOLO AYUDENME CON LAS PAUTAS en: 12 Julio 2011, 03:50 am
Una pregunta... ¿Ya estás viendo archivos en C?, si es así, bueno, yo lo haría más o menos así (es bastante rebuscada la consigna a mi parecer).

DATOS DE ENTRADA:
Como bien dice, un archivo de datos con la relación de alumnos, en este caso sería un .txt con los datos, ya sea, nombre, apellido, DNI, edad y lo que le quieras poner.
Si no estás viendo archivos, sería un registro.

Lo de las aulas igual, en ese caso sería el aula y el color, ya sea un archivo o un registro.

SALIDA

Un diagrama se podría hacer de muchas formas.
Si vamos por el lado de los archivos, podrías generar un nuevo .txt que ordene las aulas con los alumnos (por su nombre y apellido) que eso cualquiera de nosotros nos podemos ubicar (poniéndonos en el lugar del alumno).
Si no es relacionado con los archivos, una buena estructura que es dinámica (ya que la cantidad de alumnos puede variar) podría ser una lista que vaya agregando alumnos en las aulas determinadas...
Un árbol podía ser otra (aunque esta no me convence mucho)... Un vector o matriz, la verdad, tenes un abanico grandísimo de posibilidades, es cuestión de que veas como te parece a vos...

Pero la verdad, si podes especificar un poco más, estaría bueno

Saluttes
36  Programación / Programación C/C++ / Re: [Ayuda] Necesito modificar un EXE echo en TurboC en: 10 Julio 2011, 16:10 pm
Si buscas por Internet, hay formas de modificar archivos .EXE que al abrirlos te aparece un cartel: "Tu máquina se reiniciará en X segundos"... Y si no presionas determinadas teclas, se reinicia...
Obvio, siempre tenes que ejecutar el .EXE a lo sumo que lo configures para que se inicie con la PC.

Es fácil de programar, con un archivo .TXT basta.

Buscá que lo encontrás enseguida.

Te digo esto porque según vos no sabes nada de programación, entonces no se puede pretender que salgas programando como los dioses.
Si te interesa aprender a programar, hay millones de libros para aprender, y empezas por lo básico y luego ya vas a poder mejorar...
Mientras tanto, hace esto :P

Saludos
37  Programación / Programación C/C++ / Re: ayuda urgente en arboles binarios en: 10 Julio 2011, 16:04 pm
Generalmente, la estructura sería:

Hijos izquierdos: Menores a la raíz
Hijos derechos: Mayores o IGUALES a la raíz.

Por ende, lo que estás haciendo está perfecto.

Y acordate que la forma más eficiente de cargar los datos en un árbol binario es recursivamente (espero no confundirte) :P

¡Saludos!
38  Programación / Programación C/C++ / Re: Datos de ENTRADA/SALIDA ??? en: 9 Julio 2011, 18:45 pm
Según veo en el enunciado, habla de un "problema planteado"...
Desde mi punto de vista, me parece que antes de ese enunciado hay otra cosa que no pusiste, porque me parece medio inconcluso.

Por ahí le estoy pifiando, pero si es que tenes el enunciado más grande, ponelo...

¡Saludos!
39  Foros Generales / Foro Libre / Re: Pasion Futbolística :P en: 9 Julio 2011, 04:38 am
Como mi nick indica, soy Tripero hasta la médula...

Aguante el Lobo platense carajoo
Páginas: 1 2 3 [4]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines