C matemática de puntero con estructuras
Intentando aprender matemáticas de punteros mejor escribí este código. La intención era incrementar el puntero arrojó la estructura e imprimir sus miembros. Sé cómo imprimir sus miembros de formas más fáciles, pero realmente me gustaría saber cómo se estropean las matemáticas de mi puntero. Gracias
typedef struct{
int num;
int num2;
char *string;
} astruct ;
int main (int argc, const char * argv[])
{
astruct mystruct = { 1234, 4567,"aaaaaaa"};
astruct *address;
address = &mystruct;
// this does print 1234
printf("address 0x%x has value of:%i\n",address, *address);
address = address + sizeof(int);
//this does NOT print 4567
printf("address 0x%x has value of:%i\n",address, *address);
address = address + sizeof(int);
//this crashes the program, I wanted to print aaaaaaaa
printf("address 0x%x has value of:%s\n",address, **address);
return 0;
}