Guest User

Untitled

a guest
Dec 8th, 2011
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.74 KB | None | 0 0
  1.  
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4.  
  5. #define MAX_STRLEN
  6.  
  7. int get_lineno(FILE *infile);//ermittelt die Länge, also die Zeilen der .txt Datei
  8.  
  9. void main()
  10. {
  11.   char filename[MAX_STRLEN]="daten_in.txt";
  12.   int file_len = 0;
  13.   FILE *inFile=NULL;
  14.   double *arrayValues=NULL;//für was die Variable da und warum setzt man die gleich NULL?
  15.   double *actVal = NULL;//für was die Variable da und warum setzt man die gleich NULL?
  16.   int n=0;
  17.  
  18.   inFile=fopen(filename,"rt");//liest aus .txt datei
  19.   if (inFile != NULL) //Warum schreibt man hier inFile ungleich NULL und was heißt eigentlich "NULL" genau?
  20.   {
  21.     file_len=get_lineno(inFile);//unterprogrammaufruf, file_len=dateilänge
  22.     rewind(inFile);
  23.     arrayValues=malloc(sizeof(double)*file_len);//was macht das hier?
  24.     if (arrayValues != NULL)//Warum schreibt man hier arrayValues ungleich NULL?
  25.     {
  26.  
  27.       actVal=arrayValues;//Warum soll actVal = arrayValeus sein? Was hat das für einen Sinn?
  28.       for(n=0; n<file_len; n++)
  29.       {
  30.         fscanf(inFile,"%lf",actVal);
  31.         actVal++;//Was bewirkt dies genau?
  32.       }
  33.       actVal=arrayValues;//Warum soll actVal = arrayValeus sein? Was hat das für einen Sinn?
  34.       for(n=0; n<file_len; n++)
  35.       {
  36.         printf("%lf\n",*actVal);
  37.         actVal++;
  38.       }
  39.       free(arrayValues);//Was macht das genau?
  40.     }
  41.     else
  42.     {
  43.       printf("Memory allocation failure for Data of File %s !\n",filename);
  44.     }
  45.         fclose(inFile);
  46.   }
  47.   else
  48.   {
  49.     printf("File %s could not be opened!\n",filename);
  50.   }
  51.     //getchar();
  52. }
  53.  
  54.  
  55. int get_lineno(FILE *infile)
  56. {
  57.   int len =0;
  58.   double dummy;
  59.  
  60.   while (!feof(infile))
  61.   {
  62.     if (fscanf(infile,"%lf",&dummy) == 1)
  63.     {
  64.       len++;
  65.     }
  66.   }
  67.   return (len);
  68. }
  69.  
Advertisement
Add Comment
Please, Sign In to add comment