Раздел «Язык Си».CoffeStringG:

Чтение картинки

#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>

typedef struct
{
   char * pole;
   int m, n;
}Pict;

void getPict(Pict * kartinka, FILE * fl){
     fscanf(fl, "%d%d", &(kartinka->m), &(kartinka->n));
      printf("%d %d\n", kartinka->m, kartinka->n);
     char buf[100] = {0}, * p = 0;
      kartinka.pole = calloc( kartinka->m * kartinka->n, sizeof(char));
      p = kartinka.pole;
   for ( i  = 0; i < kartinka->n ; i++)   
   {
      fscanf(fl, "%s", p);
      p += kartinka->m;
   }
   p = kartinka->pole;
   for( i = 0 ; i < kartinka->n; i++)
   {
      printf("%d %s\n", i + 1, p);
      p += kartinka->m;      
   }
};


int main(int argc, char ** argv)
{
   Pict kartinka={0};
   int i = 0;
   if (argc < 1)
      exit(1);
   FILE * fl;
   fl = fopen(argv[1], "r");
   if (errno )
   {
         perror("Увы!\n");
         exit(1);
   }   
   
   getPict(&kartinka, fl);
      
   fclose(fl);
   return 0;
}
-- TatyanaOvsyannikova2011 - 02 Mar 2020