Mi código compila, pero al ejecutar me marca bus error 10, no se que esta fallando.Estoy intentando capturar datos en una cola dinámica.
Mi código se va de dos partes, la biblioteca "Complejos.h" y la función principal main
Complejos.h
typedef struct complejos{
int real;
char *imaginaria;
int coeficienteI;
struct complejos *sig;
}numero;
numero * CrearNumero(int r,char *i, int c);
void insertar(numero *inicio, numero *elemento);
void imprimeNumero(numero *elemento);
int complex(void);
int complex(void){
char opcion;
int x,z;
char y;
printf("\tBienvenido a su calculadora de números complejos\n\n");
printf("\t Seleccione la operación que desea realizar:\n");
printf("\t a.Suma\n\n");
printf("\t b.Multiplicación\n\n");
printf("\t c.Potencia\n\n");
printf("\tOpción:");
scanf("%c",&opcion);
switch(opcion)
{
case 'a':system("clear");
printf("hola\n");
numero *elemento;
numero *inicio;
numero *nuevo;
scanf("%d %d",&x,&z);
elemento= CrearNumero(x,"i",z);
insertar(inicio,elemento);
imprimeNumero(elemento);
printf("\n");
}
return 0;
}
numero* CrearNumero(int r,char *i, int c)
{
numero* nuevo=(numero*) malloc(sizeof(numero*));
nuevo->real=r;
nuevo->imaginaria=i;
nuevo->coeficienteI=c;
nuevo->sig=NULL;
return nuevo;
}
void insertar(numero *inicio, numero *elemento){
numero *aux=inicio;
while(aux->sig==NULL){
aux=aux->sig;
}
aux->sig=elemento;
}
void primero(numero *inicio,numero **tail)
{
numero *aux=inicio;
}
void siguiente(numero *inicio,numero **tail){
numero *aux=inicio;
aux=aux->sig;
**tail=*aux;
}
void imprimeNumero(numero *elemento)
{
printf("\t %d----> %s----->%d",elemento->real,elemento->imaginaria,elemento->coefi\
cienteI);
}
Función main
#include<stdlib.h>
#include<stdio.h>
#include"Complejos.h"
int main(){
complex();
}
[/quote]