Pagina 3 di 3 primaprima 1 2 3
Visualizzazione dei risultati da 21 a 24 su 24
  1. #21
    Originariamente inviato da Anªkin
    Anch'io tempo fa avevo cercato se si poteva fare, ma non avevo trovato nulla. Ero arrivato alla conclusione che non si può fare . Cmq se invece recuperi il modo fammelo sapere che mi interessa ancora

    vedrò se mi riesce in qualche modo di trovarlo... ma forse hai ragione tu, mi confondo con qualcos'altro...
    cmq, anche tu Anªkin, se trovi il modo, fammi sapere!


  2. #22
    bè si certo ma con fgets() è molto meglio.Come primo parametro specifichi il nome del buffer che dovrà contenere la stringa,poi la sua dimensione e infine lo stream dove dovrà prendere i caratteri!

    poi certo si puo' specificare la precisione in scanf in modo da impedire l'acquisizione di + caratteri di quanti ne siano stati realmente allocati in memoria ma questa è un'altra storia

    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

  3. #23
    Questo funziona perfettamente per come dice nell'esercizio, ma ancora non ho capito che si deve fare con i threads. Li so usare ma non capisco che richiede l'esercizio
    codice:
    #include <stdio.h>
    
    int main(int argc, char **argv) {
      char stringa[100], c;
      FILE *f;
      int i=0, n=0, tmpn=0;
      if (argc != 2) {
        fprintf(stderr, "Usage: %s <file>\n", argv[0]);
        exit(-1);
      }
      if (!(f=fopen(argv[1], "r"))) {
        fprintf(stderr, "ERRORE: Impossibile aprire il file: %s\n", argv[1]);
        exit(-1);
      }
      printf("Inserisci la stringa da ricercare nel file: ");
      fscanf(stdin, "%[^\n]", stringa);
      c = fgetc(f);
      while(1) {
        if (c == ' ' || c == '\n' || c == EOF) {
          if (tmpn==1) n++;
          tmpn=0;
          if (c==EOF) break;
        }
        if (c != stringa[i]) {
          if (i==0) c=fgetc(f);
          i=0;
          continue;
        }
        c = fgetc(f);
        i++;
        if (i == strlen(stringa)) {
          tmpn=1;
          i=0;
        }
      }
      printf("La stringa %s e' presente %d volte nel file\n", stringa, n);
      fclose(f);
      return 1;
    }

  4. #24
    grazie tante...per i thread ci penso io!
    il mio problema era sulla comparazione stringhe!!!
    ---------------------------------
    Programmatore C

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.