typedef struct user {
      int i;
      char array[10][10];

int main()

user *tmp;
1. First there should be a typedef to use it like user <varname>
2. You cannot declare an array in structure whose dimension are variables.
3. Accesing the array elements using variable i and j can be done after declaring them.

But the pointer access stuff is absolutely fine and does not contain any error.
But the only thing you should remember is using [i][j] should be done after declaring that.

Shabbir Bhimani