Luc@s
01-06-2004, 08:11
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
typedef unsigned short uint;
#define SAFE_DELETE(ptr) free(ptr); ptr = NULL;
#define WARN_IF(EXP) \
do { if (EXP) fprintf (stderr, "Warning: " #EXP "\n"); } while (0); \
void ExitFunction(void)
{
char esc;
scanf("%s", &esc);
}
int main(int argc, char *argv[])
{
uint space = 0, digit = 0, error = 0;
FILE *fin = fopen("in.txt", "r");
WARN_IF(fin == NULL)
char ch;
while(!feof(fin))
{
ch = getc(fin);
if(isalnum(ch))
++digit;
else if(isspace(ch))
++space;
else
++error;
}
puts("\t\t\t\t**STATISTIC PROGRAM**");
puts("\t Space \t\t Digit \t\t Error");
printf("\t %d \t\t %d \t\t %d\n", space, digit, error);
SAFE_DELETE(fin);
ExitFunction();
return 0;
}
Sto code mi da pero risultati sballati.
Secondo voi nd sbaglio???
Tnk
#include <stdlib.h>
#include <ctype.h>
typedef unsigned short uint;
#define SAFE_DELETE(ptr) free(ptr); ptr = NULL;
#define WARN_IF(EXP) \
do { if (EXP) fprintf (stderr, "Warning: " #EXP "\n"); } while (0); \
void ExitFunction(void)
{
char esc;
scanf("%s", &esc);
}
int main(int argc, char *argv[])
{
uint space = 0, digit = 0, error = 0;
FILE *fin = fopen("in.txt", "r");
WARN_IF(fin == NULL)
char ch;
while(!feof(fin))
{
ch = getc(fin);
if(isalnum(ch))
++digit;
else if(isspace(ch))
++space;
else
++error;
}
puts("\t\t\t\t**STATISTIC PROGRAM**");
puts("\t Space \t\t Digit \t\t Error");
printf("\t %d \t\t %d \t\t %d\n", space, digit, error);
SAFE_DELETE(fin);
ExitFunction();
return 0;
}
Sto code mi da pero risultati sballati.
Secondo voi nd sbaglio???
Tnk