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

 

 


Tema destacado: Tutorial básico de Quickjs


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 ... 40
141  Programación / Programación C/C++ / Re: problema con lista indexada en: 4 Enero 2014, 04:15 am
gracias por sus respuestas, es en lenguaje C.

preguntaba lo de los indices porque queria hacer una busqueda binaria con una lista enlazada y necesitaba saber el número total de elementos, pero mejor voy a hacer la busqueda secuencial. Una ultima duda si ya tengo hecha la lista enlazada y quiero buscar un elemento,le paso a la funcion de buscar() el puntero que apunta al primer nodo y despues voy recorriendo la lista para ver si se encuentra el elemento, pero el problema es que el codigo siempre me imprime NO SE ENCONTRO EL CODOP DE OPERACION y no entiendo por que

Código
  1. typedef struct nodo
  2. {
  3.    char *codigo;
  4.    struct nodo *sig;
  5. }CODOP;
  6.  
  7. void buscarCodop(CODOP *cabeza)
  8. {
  9.    CODOP *ptr;
  10.    char *codop = "BLE";
  11.    int encontrado = 0;
  12.    for(ptr = cabeza;(ptr != NULL)&&(encontrado);ptr = ptr->sig)
  13.    {
  14.        if((strcmp(ptr->codigo,codop)) == 0)
  15.           encontrado = 1;
  16.    }
  17.    if(encontrado == 0)
  18.       printf("\nNO SE ENCONTRO EL CODOP DE OPERACION\n");
  19.    else
  20.       printf("\nNO SE ENCONTRO EL CODOP DE OPERACION\n");
  21. }
  22.  

esta es la parte que me da problemas, no posteo todo el codigo porque son como 360 lineas

gracias
142  Programación / Programación C/C++ / problema con lista indexada en: 4 Enero 2014, 01:37 am
Saludos, estoy haciendo una lista simplemente ligada la cual tiene un campo indice para que cada que vaya agregando un elemento sepa cuantos elementos tiene. El problema es que cuando inicializo ese campo a 0 dentro de la structura me aparece un error
Código
  1. typedef struct nodo
  2. {
  3.    char *codigo;
  4.    int indice = 0;
  5.    struct nodo *sig;
  6. }NODO;

me dice que expected ':', ','...... or attribute before token

gracias
143  Programación / Programación C/C++ / Re: busqueda binaria en archivo en: 2 Enero 2014, 00:34 am
El lenguaje es C, y el archivo  en el cual tengo que buscar un codop es este:

ABA           NO   INH   1806             2   0   2
ABX           NO   IDX   1AE5             2   0   2
ABY           NO   IDX   19ED           2    0   2
ADCA        SI   IMM   89ii             1   1   2
              DIR   99dd             1   1   2
              EXT   B9hhll         1   2   3
              IDX   A9xb             1   1   2
              IDX1   A9xbff         1   2   3
              IDX2   A9xbeeff      1   3   4
              [D,IDX] A9xb     1   1   2
              [IDX2]  A9xbeeff  1   3   4

el problema es que aqui si quiero hacer la busqueda binaria no se puede porque aunque tengo 4 codops(aby,adca, etc) el archivo tiene 11 lineas porque el adca tiene muchos modos de direccionamiento y no podria saber donde esta  el codop ubicado en la mitad del archivo, entonces no se como podria resolver eso, es la parte que me confunde mas!!! y luego despues de buscar el codop tengo que ver si tiene operando, los modos de direccionamiento e imprimirlos

gracias


144  Programación / Programación C/C++ / Re: busqueda binaria en archivo en: 1 Enero 2014, 02:13 am
gracias leosansan, entonces no puedo hacer una busqueda binaria directamente de un archivo de texto???tomando en cuenta que los codops del archivo estan ya ordenados y otra duda que sería más conveniente por ejemplo si tengo la linea:

 ABA     NO   INH   1806     2   0   2

si primero tengo que buscar el codop y despues ver checar algunas cosas con los demas datos, que seria mas conveniente guardar solo el ABA en una estructura o toda la linea
 
145  Programación / Programación C/C++ / busqueda binaria en archivo en: 31 Diciembre 2013, 22:54 pm
Saludos

tengo la siguiente tabla de instrucciones(de un ensamblador) capturada en un archivo txt:

codop
ABA     NO   INH   1806     2   0   2
ABX     NO   IDX   1AE5     2   0   2
ABY     NO   IDX   19ED  2   0   2
ADC     SI   IMM   89ii     1   1   2
..
..
..

y tengo por ejemplo un codigo de operacion que dice ABY, el cual lo tengo que buscar en este archivo, para ello pense que seria mas rapido si lo hago con una busqueda binaria, pero me queda la duda de si tengo primero que guardar solamente los codigos de operacion(ABA,ADB...) en una estructura de datos para despues poder hacer la busqueda, o si tengo que recorrer el archivo completo linea por linea para saber cuantos codops son??  no les pido que posteen el codigo solo que me dijeran  cual podria ser la manera más optima y rapida de hacerlo

gracias
146  Programación / Programación C/C++ / funcion strcmpi() en: 31 Diciembre 2013, 05:05 am
Saludos

tengo una duda con respecto a si la funcion strcmpi esta recomendada usarla o no. tengo entendido que a diferencia de strcmp, esta no es estandar, y si tengo que comparar dos cadenas pero sin diferenciar mayusculas de minusculas no se si hacerlo con esta funcion o hacerlo yo todo el procedimiento

de antemano gracias, y felices fiestas
147  Programación / Programación C/C++ / Re: Programa identifique partes de una linea en: 28 Diciembre 2013, 02:17 am
ya supe donde estaba el error, en la bandera esEtiqueta, tuve que inicializarla a 1 porque si no no funcionaba y tambien por ejemplo en la etiqueta dos tambien me estaba leyendo dos mas un espacio en blanco y por eso me aparecia que todas las etiquetas tenian error, porque ese ' ' no es ni letra, ni digito ni guion bajo

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #define LONG_ETIQUETA 8
  5. #define LONG_CODOP 5
  6.  
  7. typedef enum {FALSO,VERDADERO} booleano;
  8. typedef enum {ETIQUETA,CODOP,OPERANDO} linea;
  9.  
  10. booleano esComentario(FILE *fd);
  11. char *Etiqueta_Codop_Operando(FILE *fd,int linea);
  12. void erroresEtiqueta(char *etiqueta);
  13. void erroresCodop(char *codop);
  14. void buscarFinLinea(FILE *fd);
  15. void ignorarEspacios(FILE *fd);
  16. booleano esNumero(char caracter);
  17. booleano esLetra(char caracter);
  18.  
  19. int main()
  20. {
  21.    FILE *fd;
  22.    int car;
  23.    char *etiqueta,*codop,*operando;
  24.    if((fd = fopen("P1ASM.txt","r"))!= NULL)
  25.    {
  26.        while((car = fgetc(fd))!= EOF)
  27.        {
  28.            if(car == ';')
  29.            {
  30.                if(esComentario(fd))
  31.                   printf("COMENTARIO\n");
  32.                else
  33.                   buscarFinLinea(fd);
  34.            }
  35.            else if(esLetra(car))
  36.            {
  37.                etiqueta = Etiqueta_Codop_Operando(fd,ETIQUETA);
  38.                printf("\nETIQUETA = %s\n",etiqueta);
  39.                erroresEtiqueta(etiqueta);
  40.                ignorarEspacios(fd);
  41.                codop = Etiqueta_Codop_Operando(fd,CODOP);
  42.                printf("CODOP = %s\n",codop);
  43.                erroresCodop(codop);
  44.                ignorarEspacios(fd);
  45.                operando = Etiqueta_Codop_Operando(fd,OPERANDO);
  46.                printf("OPERANDO = %s\n\n",operando);
  47.            }
  48.        }
  49.    }
  50.    else
  51.       printf("No se pudo abrir el archivo");
  52.    return 0;
  53. }
  54.  
  55. booleano esComentario(FILE *fd)
  56. {
  57.    int car;
  58.    while((car = fgetc(fd))!= '\n')
  59.    {
  60.        if(car == ';')
  61.           return 0;
  62.    }
  63.    return 1;
  64. }
  65.  
  66. void buscarFinLinea(FILE *fd)
  67. {
  68.    int car;
  69.    while((car = fgetc(fd))!= '\n')
  70.        ;
  71. }
  72.  
  73. void ignorarEspacios(FILE *fd)
  74. {
  75.    int car;
  76.    do
  77.    {
  78.        car = fgetc(fd);
  79.    }while(car == '\t' || car == ' ');
  80. }
  81.  
  82. booleano esLetra(char caracter)
  83. {
  84.    if((caracter >= 'A' && caracter <= 'Z')||(caracter >= 'a' && caracter <= 'z'))
  85.       return 1;
  86.    else
  87.       return 0;
  88. }
  89.  
  90. booleano esNumero(char caracter)
  91. {
  92.    if(caracter >= '0' && caracter <= '9')
  93.       return 1;
  94.    else
  95.       return 0;
  96. }
  97.  
  98. char *Etiqueta_Codop_Operando(FILE *fd,int linea)
  99. {
  100.    int car,lon = 0,pos;
  101.    char *cadena;
  102.    fseek(fd,-1,SEEK_CUR);
  103.    pos = ftell(fd);
  104.    if(linea == ETIQUETA||linea == CODOP)
  105.    {
  106.        do
  107.        {
  108.            car = fgetc(fd);
  109.            lon++;
  110.        }while(car != '\t' && car != ' ');
  111.    }
  112.    else
  113.    {
  114.        while((car = fgetc(fd)) != '\n')
  115.           lon++;
  116.    }
  117.    cadena = (char*)calloc((lon+1),sizeof(char));
  118.    fseek(fd,pos,SEEK_SET);
  119.    fgets(cadena,lon+1,fd);
  120.    return cadena;
  121. }
  122.  
  123. void erroresEtiqueta(char *etiqueta)
  124. {
  125.    int tam,i = 0,esEtiqueta = 1;
  126.    tam = strlen(etiqueta);
  127.    if(tam-1 > LONG_ETIQUETA)
  128.       printf("\tError:la longitud maxima de una etiqueta es de 8 caracteres\n");
  129.    for(i = 0;(i < tam-1)&&(esEtiqueta);i++)
  130.    {
  131.        if((!esLetra(etiqueta[i]))&&(!esNumero(etiqueta[i]))&&(etiqueta[i] != '_'))
  132.           esEtiqueta = 0;
  133.    }
  134.    if(!esEtiqueta)
  135.       printf("\tError:los caracteres validos en las etiquetas son letras, digitos(0..9) y el guion bajo\n");
  136. }
  137.  
  138. void erroresCodop(char *codop)
  139. {
  140.    int tam,i = 0,esCodop = 1,punto = 0;
  141.    tam = strlen(codop);
  142.    if(tam-1 > LONG_CODOP)
  143.       printf("\tError:la longitud maxima de un codigo de operacion es de 5 caracteres\n");
  144.    if(!esLetra(codop[i]))
  145.        printf("\tError:los codigos de operacion deben iniciar con letra\n");
  146.    else
  147.    {
  148.        for(i = 1;(i < tam-1)&&(esCodop)&&(punto>=0&&punto<=1);i++)
  149.        {
  150.            if((!esLetra(codop[i]))&&(codop[i] != '.'))
  151.               esCodop = 0;
  152.            else if(codop[i] == '.')
  153.               punto++;
  154.        }
  155.        if(!esCodop)
  156.           printf("\tError:los caracteres validos en los codigos de operacion son letras y el caracter punto\n");
  157.        if(punto > 1)
  158.           printf("\tError:los codigos de operacion no pueden tener mas de un punto\n");
  159.    }
  160. }
  161.  

pero yo todavia no entiendo por que no puedo inicializar la bandera con 0 aqui ya no hace lo que le pido

Código
  1. void erroresEtiqueta(char *etiqueta)
  2. {
  3.    int tam,i = 0,esEtiqueta = 0;
  4.    tam = strlen(etiqueta);
  5.    if(tam-1 > LONG_ETIQUETA)
  6.       printf("\tError:la longitud maxima de una etiqueta es de 8 caracteres\n");
  7.    for(i = 0;(i < tam-1)&&(esEtiqueta);i++)
  8.    {
  9.        if((!esLetra(etiqueta[i]))&&(!esNumero(etiqueta[i]))&&(etiqueta[i] != '_'))
  10.           esEtiqueta = 1;
  11.    }
  12.    if(esEtiqueta == 1)
  13.       printf("\tError:los caracteres validos en las etiquetas son letras, digitos(0..9) y el guion bajo\n");
  14. }
  15.  

148  Programación / Programación C/C++ / Re: Programa identifique partes de una linea en: 27 Diciembre 2013, 21:49 pm
Gracias leosansan por tu respuesta, yo crei que al hacer esto:

esLetra(etiqueta,i) le estaba enviando un solo elemento de la cadena, lo que equivaldria a un caracter, para ya despues en la funcion poder hacer esto:

Código
  1. if((etiqueta[i] >= 'A' && etiqueta[i] <= 'Z')||(etiqueta[i] >= 'a' && etiqueta[i] <= 'z'))
  2.       return 1;


pero me queda una duda, si yo por ejemplo le agregara la regla de: los codigos de operacion deben iniciar con letra a los CODOPS

e hiciera una funcion para verificar los errores de CODOPS, en este caso el     if(!esLetra(codop,i)) si funciona y si me imprime el mensaje de error, cosa que no hace con la verificacion de errores en etiquetas por que es esto?

Código
  1. void erroresCodop(char *codop)
  2. {
  3.    int tam,i = 0;
  4.    tam = strlen(codop);
  5.    if(tam-1 > LONG_CODOP)
  6.       printf("\tError:la longitud maxima de un codigo de operacion es de 5 caracteres\n");
  7.    if(!esLetra(codop,i))
  8.       printf("\tError:los codigos de operacion deben iniciar con letra\n");
  9. }

el codigo completo era este:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #define LONG_ETIQUETA 8
  5. #define LONG_CODOP 5
  6.  
  7. typedef enum {FALSO,VERDADERO} booleano;
  8. typedef enum {ETIQUETA,CODOP,OPERANDO} linea;
  9.  
  10. booleano esComentario(FILE *fd);
  11. char *Etiqueta_Codop_Operando(FILE *fd,int linea);
  12. void erroresEtiqueta(char *etiqueta);
  13. void erroresCodop(char *codop);
  14. void buscarFinLinea(FILE *fd);
  15. void ignorarEspacios(FILE *fd);
  16. booleano esNumero(char caracter[],int i);
  17. booleano esLetra(char caracter[],int i);
  18.  
  19. int main()
  20. {
  21.    FILE *fd;
  22.    int car;
  23.    char *etiqueta,*codop,*operando;
  24.    if((fd = fopen("P1ASM.txt","r"))!= NULL)
  25.    {
  26.        while((car = fgetc(fd))!= EOF)
  27.        {
  28.            if(car == ';')
  29.            {
  30.                if(esComentario(fd))
  31.                   printf("COMENTARIO\n");
  32.                else
  33.                   buscarFinLinea(fd);
  34.            }
  35.            else if((car >= 'A' && car <= 'Z')||(car >= 'a' && car <= 'z'))
  36.            {
  37.                etiqueta = Etiqueta_Codop_Operando(fd,ETIQUETA);
  38.                printf("\nETIQUETA = %s\n",etiqueta);
  39.                erroresEtiqueta(etiqueta);
  40.                ignorarEspacios(fd);
  41.                codop = Etiqueta_Codop_Operando(fd,CODOP);
  42.                printf("CODOP = %s\n",codop);
  43.                erroresCodop(codop);
  44.                ignorarEspacios(fd);
  45.                operando = Etiqueta_Codop_Operando(fd,OPERANDO);
  46.                printf("OPERANDO = %s\n\n",operando);
  47.            }
  48.        }
  49.    }
  50.    else
  51.       printf("No se pudo abrir el archivo");
  52.    return 0;
  53. }
  54.  
  55. booleano esComentario(FILE *fd)
  56. {
  57.    int car;
  58.    while((car = fgetc(fd))!= '\n')
  59.    {
  60.        if(car == ';')
  61.           return 0;
  62.    }
  63.    return 1;
  64. }
  65.  
  66. void buscarFinLinea(FILE *fd)
  67. {
  68.    int car;
  69.    while((car = fgetc(fd))!= '\n')
  70.        ;
  71. }
  72.  
  73. void ignorarEspacios(FILE *fd)
  74. {
  75.    int car;
  76.    do
  77.    {
  78.        car = fgetc(fd);
  79.    }while(car == '\t' || car == ' ');
  80. }
  81.  
  82. booleano esLetra(char caracter[],int i)
  83. {
  84.    if((caracter[i] >= 'A' && caracter[i] <= 'Z')||(caracter[i] >= 'a' && caracter[i] <= 'z'))
  85.       return 1;
  86.    else
  87.       return 0;
  88. }
  89.  
  90. booleano esNumero(char caracter[],int i)
  91. {
  92.    if(caracter[i] >= '0' && caracter[i] <= '9')
  93.       return 1;
  94.    else
  95.       return 0;
  96. }
  97.  
  98. char *Etiqueta_Codop_Operando(FILE *fd,int linea)
  99. {
  100.    int car,lon = 0,pos;
  101.    char *cadena;
  102.    fseek(fd,-1,SEEK_CUR);
  103.    pos = ftell(fd);
  104.    if(linea == ETIQUETA||linea == CODOP)
  105.    {
  106.        do
  107.        {
  108.            car = fgetc(fd);
  109.            lon++;
  110.        }while(car != '\t' && car != ' ');
  111.    }
  112.    else
  113.    {
  114.        while((car = fgetc(fd)) != '\n')
  115.           lon++;
  116.    }
  117.    cadena = calloc(lon+1);
  118.    fseek(fd,pos,SEEK_SET);
  119.    fgets(cadena,lon+1,fd);
  120.    return cadena;
  121. }
  122.  
  123. void erroresEtiqueta(char *etiqueta)
  124. {
  125.    int tam,i = 0,caracterInvalido = 0;
  126.    tam = strlen(etiqueta);
  127.    if(tam-1 > LONG_ETIQUETA)
  128.       printf("\tError:la longitud maxima de una etiqueta es de 8 caracteres\n");
  129.    for(i = 0;(i < tam)&&(caracterInvalido);i++)
  130.    {
  131.        if((!esLetra(etiqueta,i))&&(!esNumero(etiqueta,i))&&(etiqueta[i] != '_'))
  132.           caracterInvalido = 1;
  133.    }
  134.    if(caracterInvalido == 1)
  135.       printf("Error:los caracteres validos en las etiquetas son letras, digitos(0..9) y el guion bajo\n");
  136. }
  137.  
  138. void erroresCodop(char *codop)
  139. {
  140.    int tam,i = 0;
  141.    tam = strlen(codop);
  142.    if(tam-1 > LONG_CODOP)
  143.       printf("\tError:la longitud maxima de un codigo de operacion es de 5 caracteres\n");
  144.    if(!esLetra(codop,i))
  145.       printf("\tError:los codigos de operacion deben iniciar con letra\n");
  146. }
  147.  

gracias y felices fiestas
149  Programación / Programación C/C++ / Programa identifique partes de una linea en: 27 Diciembre 2013, 04:45 am
Saludos tengo un programa que me tiene que leer un archivo como por ejemplo:

;comentario numero 1 =TALLER=
Et1       equ      $ffFF
dos         LDAA   @4732
;comentario numero 2 ¡Programacion!
;comentario numero 3
tres       sWi      x,5
Netq%23       RMB      556
Et12_xyz12  ADCA   1,PC

y me tiene que imprimir sus partes

COMENTARIO

ETIQUETA = Et1
CODOP = equ
OPERANDO = $ffFF
...
...
y asi con todas las lineas

el problema es que para las las etiquetas tengo dos reglas, una que su longitud no sea mayor a 8 caracteres y otra, que solo tenga letras, numeros y el guion bajo, si una etiqueta tiene otro caracter tengo que imprimir

Error:los caracteres validos en las etiquetas son letras, digitos(0..9) y el guion bajo

pero para el Netq%23 me tendria que imprimir un mensaje de error, por que tiene el %, pero no imprime nada no entiendo por que

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #define LONG_ETIQUETA 8
  5. #define LONG_CODOPS 5
  6.  
  7. typedef enum {FALSO,VERDADERO} booleano;
  8. typedef enum {ETIQUETA,CODOP,OPERANDO} linea;
  9.  
  10. booleano esComentario(FILE *fd);
  11. char *Etiqueta_Codop_Operando(FILE *fd,int linea);
  12. void erroresEtiqueta(char *etiqueta);
  13. void buscarFinLinea(FILE *fd);
  14. void ignorarEspacios(FILE *fd);
  15. booleano esNumero(char cadena[],int i);
  16. booleano esLetra(char cadena[],int i);
  17.  
  18. int main()
  19. {
  20.    FILE *fd;
  21.    int car;
  22.    char *etiqueta,*codop,*operando;
  23.    if((fd = fopen("P1ASM.txt","r"))!= NULL)
  24.    {
  25.        while((car = fgetc(fd))!= EOF)
  26.        {
  27.            if(car == ';')
  28.            {
  29.                if(esComentario(fd))
  30.                   printf("COMENTARIO\n");
  31.                else
  32.                   buscarFinLinea(fd);
  33.            }
  34.            else if((car >= 'A' && car <= 'Z')||(car >= 'a' && car <= 'z'))
  35.            {
  36.                etiqueta = Etiqueta_Codop_Operando(fd,ETIQUETA);
  37.                printf("\nETIQUETA = %s\n",etiqueta);
  38.                erroresEtiqueta(etiqueta);
  39.                ignorarEspacios(fd);
  40.                codop = Etiqueta_Codop_Operando(fd,CODOP);
  41.                printf("CODOP = %s\n",codop);
  42.                ignorarEspacios(fd);
  43.                operando = Etiqueta_Codop_Operando(fd,OPERANDO);
  44.                printf("OPERANDO = %s\n\n",operando);
  45.            }
  46.        }
  47.    }
  48.    else
  49.       printf("No se pudo abrir el archivo");
  50.    return 0;
  51. }
  52.  
  53. booleano esComentario(FILE *fd)
  54. {
  55.    int car;
  56.    while((car = fgetc(fd))!= '\n')
  57.    {
  58.        if(car == ';')
  59.           return 0;
  60.    }
  61.    return 1;
  62. }
  63.  
  64. void buscarFinLinea(FILE *fd)
  65. {
  66.    int car;
  67.    while((car = fgetc(fd))!= '\n')
  68.        ;
  69. }
  70.  
  71. void ignorarEspacios(FILE *fd)
  72. {
  73.    int car;
  74.    do
  75.    {
  76.        car = fgetc(fd);
  77.    }while(car == '\t' || car == ' ');
  78. }
  79.  
  80. booleano esLetra(char *etiqueta,int i)
  81. {
  82.    if((etiqueta[i] >= 'A' && etiqueta[i] <= 'Z')||(etiqueta[i] >= 'a' && etiqueta[i] <= 'z'))
  83.       return 1;
  84.    else
  85.       return 0;
  86. }
  87.  
  88. booleano esNumero(char *etiqueta,int i)
  89. {
  90.    if(etiqueta[i] >= '0' && etiqueta[i] <= '9')
  91.       return 1;
  92.    else
  93.       return 0;
  94. }
  95.  
  96. char *Etiqueta_Codop_Operando(FILE *fd,int linea)
  97. {
  98.    int car,lon = 0,pos;
  99.    char *cadena;
  100.    fseek(fd,-1,SEEK_CUR);
  101.    pos = ftell(fd);
  102.    if(linea == ETIQUETA||linea == CODOP)
  103.    {
  104.        do
  105.        {
  106.            car = fgetc(fd);
  107.            lon++;
  108.        }while(car != '\t' && car != ' ');
  109.    }
  110.    else
  111.    {
  112.        while((car = fgetc(fd)) != '\n')
  113.           lon++;
  114.    }
  115.    cadena = calloc((lon+1));
  116.    fseek(fd,pos,SEEK_SET);
  117.    fgets(cadena,lon+1,fd);
  118.    return cadena;
  119. }
  120.  
  121. void erroresEtiqueta(char *etiqueta)
  122. {
  123.    int tam,i,caracterInvalido = 0;
  124.    tam = strlen(etiqueta);
  125.    if(tam-1 > LONG_ETIQUETA)
  126.       printf("\tError:la longitud maxima de una etiqueta es de ocho caracteres\n");
  127.    for(i = 0;(i < tam)&&(caracterInvalido);i++)
  128.    {
  129.        if((!esLetra(etiqueta,i))&&(!esNumero(etiqueta,i))&&(!etiqueta[i] == '_'))
  130.           caracterInvalido = 1;
  131.    }
  132.    if(caracterInvalido)
  133.       printf("Error:los caracteres validos en las etiquetas son letras, digitos(0..9) y el guion bajo\n");
  134. }
  135.  

el resto del codigo funciona bien, solo tengo problema con esa parte

gracias
150  Programación / Programación C/C++ / fgetc() en: 25 Diciembre 2013, 08:54 am
Saludos

Yo sé que la función fgetc funciona con un argumento que es un stream de tipo FILE, pero tengo la duda de si fgetc puede aceptar argumentos de otros tipos como char*??

gracias
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 ... 40
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines