• Jueves 28 de Marzo de 2024, 16:36

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - ccgt

Páginas: [1]
1
C/C++ / Re:como puedo concatenar la salida de un archivo
« en: Domingo 4 de Septiembre de 2016, 20:28 »
exacto asi es, pero como puedo recorrer cada string dentro del array, con strlen creo pero que hago para que siga despues del \0 que separa a cada cadena dentro del array

2
C/C++ / Re:como puedo concatenar la salida de un archivo
« en: Domingo 4 de Septiembre de 2016, 05:11 »
ya logre guardar el contenido del fichero en un array como una cadena
pero ahora con strtok segun tengo entendido divide o delimita esa cadena segun el "delimitador" que queramos, y yo lo quiero tokenizar por los espacios en blanco y ya lo he hecho , es decir cada palabra la converti en una cadena ya que eso hace strtok cierto le agrega al final \0 de la palabra tokenizada,  pero ahora lo que necesito en guardar esa cadenas en un array como lo hago

segun entiendo las puedo guarda en un char * arreglo[numero de cadenas que almacena];  como lo hago

void main()
{
char entrada[100] ;
   char s2[4] = " \n\t";
   char *ptr; int i=0;
   char *copia[aqui pienso almacenar las cadenas separadas con strtok ];
char c;
FILE *fp=fopen("ard.txt", "r");
while((c=fgetc(fp))!=EOF){
entrada[i++]=c;
}
entrada='\0';
 ptr = strtok( entrada, s2 );    // Primera llamada => Primer token
   printf( "%s\n", ptr );
   while( (ptr = strtok( NULL, s2 )) != NULL )    // Posteriores llamadas
     printf( "%s\n", ptr );


}

3
C/C++ / Re:como puedo concatenar la salida de un archivo
« en: Sábado 3 de Septiembre de 2016, 00:18 »
ahora como puedo almacenar todo el contenido de un fichero en solo un string

4
C/C++ / Re:como puedo concatenar la salida de un archivo
« en: Jueves 1 de Septiembre de 2016, 01:19 »
Habrá que leer línea por línea el fichero, luego separar estas líneas por los espacios y en cada palabra comprobar si es palabra, número o identificador, el separar se hace con la función strtok, haz tres funciones (esto te queda para ti)  :jumpie:  que devuelvan true o false para sumar o no a cada tipo, así al final en los datos sPalabra, sNumero, sIdentifica tendrás la suma de cada uno:

Código: [Seleccionar]

  FILE *fpFichero;
  char *pPuntero;
  char cCadena[75];
  short sPalabra, sNumero, sIdentifica;
  sPalabra = sNumero = sIdentifica = 0;
  if((fpFichero = fopen("PRUEBA.TXT", "r")) != NULL)
  {
    while(fgets(cCadena, 70, fpFichero) != NULL)      // Aquí leemos hasta el final del fichero por línea
    {
      pPuntero = strtok(cCadena, " ");
      while(pPuntero != NULL)                               // Aquí partimos la línea leída por espacios
      {
        if(Palabra(pPuntero))                                  // Aquí llamaremos a una función que devuelva si es una palabra
          sPalabra++;
        if(Numero(pPuntero))                                 // Aquí llamaremos a una función que devuelva si es un número
          sNumero++;
        if(Identifica(pPuntero))                              // Aquí llamaremos a una función que devuelva si es un identificador
          sIdentifica++;
        pPuntero = strtok(NULL, " ");
      }
    }
  }
  fclose(fpFichero);



amigo disculpa creo que encontre una mejor solucion para mi problema
es leer el archivo en un array de strings

#include <stdio.h>
     #include <conio.h>
#define MAX_CHARS 20

typedef char string[MAX_CHARS+1]; 

main(){
   int i;
   string array[4];

   FILE *data;
   data = fopen("ard.txt","r");
   for(i = 0; i < 4; i++)
        { fscanf(data, "%s", array); }
           printf("%s",array[3]);
   getch();
}


el cual me separa cada palabra del txt y lo vueleve un string   pero ahora como hago para que ese array de string sea dinamico solicito me puedar ayudar

5
C/C++ / Re:como puedo concatenar la salida de un archivo
« en: Lunes 29 de Agosto de 2016, 18:00 »
tengo este txt
-----------------------------------------------------------------------------------------------------------

miguel ruiz    44455   56.65  jose5r

  5 6  miguel55

----------------------------------------------------------------------------------------------------------------

es decir puede venir mas de una palabra en una linea y muchas mas lineas

pero el objetivo del programa es que este pueda identificar  los numeros con punto o sin punto y los nombres e identificadores que tiene letras y numeros y la salida del programa tendria que ser de este modo

--------------------------------------------------
miguel  ---- palabra                               
ruiz --------palabra
44455  ----- numero
56.65   -------numero flotante
jose5r-----------identificador
5----- numero
6------ numero

---------------------------------------------------
miguel55--------------identificador   

6
C/C++ / como puedo concatenar la salida de un archivo
« en: Lunes 29 de Agosto de 2016, 05:30 »
necesito concatenar la salida de un archivo que leo con fgetc  para saber si es un digito , una palabra reservada o un identificador

pero cuando lo hago if ((f1=fopen("ard.txt","r"))==NULL){
       printf("Error! opening file");

   }
  while((c=fgetc(f1))!=EOF)
  {
     if(isdigit(c));
printf("%c es numero",c);
  }
}

este solo muestra caracter por caracter es decir el 555 debe ser un numero y no 5 y 5 y 5 ademas hay problemas con los espacios en blanco

Páginas: [1]