B_L>>> cat ttt2.c
B_L>#include <stdio.h>
B_L>typedef struct {
B_L>char newr[106];
B_L>char newq[15];
B_L>} fgrt_t;
B_L>int main()
B_L>{
B_L> FILE *USFILE;
B_L> fgrt_t *usrec;
B_L> char *usfile="ugd.dat";
B_L> USFILE=fopen(usfile,"rb");
B_L> printf("1\n");
B_L> fread(usrec,sizeof(fgrt_t),1,USFILE);
B_L> printf("2\n");
B_L> fclose(USFILE);
B_L> printf("3\n");
B_L> printf("newq: :%15s:\n", usrec->newq);
B_L> printf("4\n");
B_L> return 0;
B_L>}
B_L>
А кто память выделит для чтения данных ?
Хотя бы так:
fgrt_t* usrec = (fgrt_t*)malloc(sizeof(fgrt_t));
...
free(usrec)
return 0;
P.S.
Переменные не советую именовать заглавными буквами.
Обычно так именуют макросы.