#include <stdio.h> 
#include <stdlib.h> 
#include <locale.h> 
 
typedef  struct  { 
    int  matricula; 
    float  salario; 
}  Funcionario; 
 
int  ler_dados( void )  { 
    int  dado; 
    printf ( "Digite a matrícula:\t " ) ;      return  dado;  
} 
float  ler_salario( void )  { 
      float  salario; 
      printf ( "Digite o valor do salário:\t " ) ;        return  salario; 
} 
int  inserir_funcionario( Funcionario * funcionarios,  int  tamanho)  { 
    funcionarios[ tamanho] .matricula  =  ler_dados( ) ; 
    funcionarios[ tamanho] .salario  =  ler_salario( ) ; 
    return  ++ tamanho; 
} 
int  main( void )  { 
    Funcionario 
* funcionarios 
=  malloc ( sizeof ( Funcionario
) ) ;     int  tamanho =  0 ; 
    for  ( int  i =  0 ;  i <  5 ;  i++ )  { 
        printf ( "Sizeof : %lu\n " ,  sizeof ( Funcionario
) ) ;          printf ( "Executou: %d\n " ,  i 
+  1 ) ;          printf ( "Tamanho: %d\n \n " ,  tamanho
) ;          funcionarios 
=  realloc ( funcionarios
,  sizeof ( Funcionario
)  *  ( tamanho 
+  1 ) ) ;         tamanho =  inserir_funcionario( funcionarios,  tamanho) ; 
    } 
} 
 
//https://pt.stackoverflow.com/q/326686/101 
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPGxvY2FsZS5oPgoKdHlwZWRlZiBzdHJ1Y3QgewogICAgaW50IG1hdHJpY3VsYTsKICAgIGZsb2F0IHNhbGFyaW87Cn0gRnVuY2lvbmFyaW87CgppbnQgbGVyX2RhZG9zKHZvaWQpIHsKICAgIGludCBkYWRvOwogICAgcHJpbnRmKCJEaWdpdGUgYSBtYXRyw61jdWxhOlx0Iik7CiAgICBzY2FuZigiICVkIiwgJmRhZG8pOwogICAgcmV0dXJuIGRhZG87IAp9CmZsb2F0IGxlcl9zYWxhcmlvKHZvaWQpIHsKICAgICAgZmxvYXQgc2FsYXJpbzsKICAgICAgcHJpbnRmKCJEaWdpdGUgbyB2YWxvciBkbyBzYWzDoXJpbzpcdCIpOwogICAgICBzY2FuZigiICVmIiwgJnNhbGFyaW8pOwogICAgICByZXR1cm4gc2FsYXJpbzsKfQppbnQgaW5zZXJpcl9mdW5jaW9uYXJpbyhGdW5jaW9uYXJpbyAqZnVuY2lvbmFyaW9zLCBpbnQgdGFtYW5obykgewogICAgZnVuY2lvbmFyaW9zW3RhbWFuaG9dLm1hdHJpY3VsYSA9IGxlcl9kYWRvcygpOwogICAgZnVuY2lvbmFyaW9zW3RhbWFuaG9dLnNhbGFyaW8gPSBsZXJfc2FsYXJpbygpOwogICAgcmV0dXJuICsrdGFtYW5obzsKfQppbnQgbWFpbih2b2lkKSB7CiAgICBzZXRsb2NhbGUoTENfQUxMLCJQb3J0dWd1ZXNlIik7CiAgICBGdW5jaW9uYXJpbyAqZnVuY2lvbmFyaW9zID0gbWFsbG9jKHNpemVvZihGdW5jaW9uYXJpbykpOwogICAgaW50IHRhbWFuaG8gPSAwOwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCA1OyBpKyspIHsKICAgICAgICBwcmludGYoIlNpemVvZiA6ICVsdVxuIiwgc2l6ZW9mKEZ1bmNpb25hcmlvKSk7CiAgICAgICAgcHJpbnRmKCJFeGVjdXRvdTogJWRcbiIsIGkgKyAxKTsKICAgICAgICBwcmludGYoIlRhbWFuaG86ICVkXG5cbiIsIHRhbWFuaG8pOwogICAgICAgIGZ1bmNpb25hcmlvcyA9IHJlYWxsb2MoZnVuY2lvbmFyaW9zLCBzaXplb2YoRnVuY2lvbmFyaW8pICogKHRhbWFuaG8gKyAxKSk7CiAgICAgICAgdGFtYW5obyA9IGluc2VyaXJfZnVuY2lvbmFyaW8oZnVuY2lvbmFyaW9zLCB0YW1hbmhvKTsKICAgIH0KfQoKLy9odHRwczovL3B0LnN0YWNrb3ZlcmZsb3cuY29tL3EvMzI2Njg2LzEwMQ==