salve a tutti,
ho scritto questo codice, che al compilatore va benissimo:
codice:
#define Bool int
#define False 0
#define True !False
#include <stdio.h>
#include <stdlib.h>
//funzione che ritorna 1 se il numero dato non è divisibile per alcun primo trovato sin ora
Bool isPrimo(long x, long primi[], long nPrimi){
     int tot=0;
     int i;
     for (i=1; i=nPrimi; i++){
         if(x%primi[i]==0){
           tot++;                 
             }
         }
     if (tot==0){
      return True;
      }
     else{
          return False;
                    }
     }
     
int main(int argc, char *argv[])
{ 
  long NoPrimi=0;
  long PrimiList[1000];
  long i;
  for(i=0; i=256; i++){
           Bool boolPrimo=isPrimo(i, PrimiList, NoPrimi);
           if(boolPrimo==True){
                        printf("%d, ", &i);
                        PrimiList[NoPrimi]=i;
                        NoPrimi++;                        
                         }
           }
 
  system("PAUSE>nul");	
  return 0;
}
poi però, quando lo eseguo mi stampa un numero pari (circa 22000) e poi windows mi avverte che il programma non risponde!
qualcuno sa dove sbaglio?