mian {char p[20]={'a','b','c','d'},q[]="abc",r[]="abcde"; strcpy(p+strlen(q),r);strlen(p,q);printf("%d%d\n",sizeof(p),strlen(p);执行程序后,请问p中的内容是什么?
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/19 10:46:56
![mian {char p[20]={'a','b','c','d'},q[]=](/uploads/image/z/6847043-59-3.jpg?t=mian+%7Bchar+p%5B20%5D%3D%7B%27a%27%2C%27b%27%2C%27c%27%2C%27d%27%7D%2Cq%5B%5D%3D%22abc%22%2Cr%5B%5D%3D%22abcde%22%3B+strcpy%28p%2Bstrlen%28q%29%2Cr%29%3Bstrlen%28p%2Cq%29%3Bprintf%28%22%25d%25d%5Cn%22%2Csizeof%28p%29%2Cstrlen%28p%29%3B%E6%89%A7%E8%A1%8C%E7%A8%8B%E5%BA%8F%E5%90%8E%2C%E8%AF%B7%E9%97%AEp%E4%B8%AD%E7%9A%84%E5%86%85%E5%AE%B9%E6%98%AF%E4%BB%80%E4%B9%88%3F)
mian {char p[20]={'a','b','c','d'},q[]="abc",r[]="abcde"; strcpy(p+strlen(q),r);strlen(p,q);printf("%d%d\n",sizeof(p),strlen(p);执行程序后,请问p中的内容是什么?
mian {char p[20]={'a','b','c','d'},q[]="abc",r[]="abcde"; strcpy(p+strlen(q),r);strlen(p,q);
printf("%d%d\n",sizeof(p),strlen(p);
执行程序后,请问p中的内容是什么?
mian {char p[20]={'a','b','c','d'},q[]="abc",r[]="abcde"; strcpy(p+strlen(q),r);strlen(p,q);printf("%d%d\n",sizeof(p),strlen(p);执行程序后,请问p中的内容是什么?
q[]="abc"; strlen(q) 为 3,
p+strlen(q) 指向 p+3, 就是 p[3],
strcpy(p+strlen(q),r); 就是 把 r[]="abcde" 复制到 p[3]开始的以后那些单元里, p[3] 原是'd',
复制后,p="abcabcde"
sizeof(p), 为 20 -- 变量声明时 定了 p[20].
strlen(p); 为 8,内容 是 "abcabcde“