In C a pointer is an unsigned int. The sizeof(int) is the size of a pointer. Nowdays typically 32 or 64 bits. When you print a pointer as an int, you are printing the memory address it points to.
Also in C, the string literals datatype is char*.
Note: when printing a pointer you should use %i or large address may print as negative. Actually it’s common practice to print addresses as hex (%x).
Also C datatype declarations are one of its most difficult syntax’s to understand. The usage decorators are on the variable rather than the type (common on more modern languages)
// pointer to int array
int *myvar1[];