/* char p[] = "saru"; */
Dump of assembler code for function saruarray:
0x08048248 <saruarray+0>: sub esp,0x8
0x0804824b <saruarray+3>: mov BYTE PTR [esp],0x73
0x0804824f <saruarray+7>: mov BYTE PTR [esp+1],0x61
0x08048254 <saruarray+12>: mov BYTE PTR [esp+2],0x72
0x08048259 <saruarray+17>: mov BYTE PTR [esp+3],0x75
0x0804825e <saruarray+22>: mov BYTE PTR [esp+4],0xa
0x08048263 <saruarray+27>: mov BYTE PTR [esp+5],0x0
0x08048268 <saruarray+32>: lea eax,[esp*1]
0x0804826b <saruarray+35>: push 0x5
0x0804826d <saruarray+37>: push eax
0x0804826e <saruarray+38>: push 0x1
0x08048270 <saruarray+40>: call 0x804e560 <write>
0x08048275 <saruarray+45>: add esp,0x14
0x08048278 <saruarray+48>: ret

/* char *p = "saru"; */
Dump of assembler code for function sarup:
0x0804827a <sarup+0>: push 0x5
0x0804827c <sarup+2>: push 0x8096390
0x08048281 <sarup+7>: push 0x1
0x08048283 <sarup+9>: call 0x804e560 <write>
0x08048288 <sarup+14>: add esp,0xc
0x0804828b <sarup+17>: ret

(gdb) print (char *)0x8096390
$1 = 0x8096390 "saru\n"