- UID
- 864
- 斋米
-
- 斋豆
-
- 回帖
- 0
- 积分
- 62579
- 在线时间
- 小时
- 注册时间
- 2010-3-29
- 最后登录
- 1970-1-1
|
发表于 2011-11-28 19:23:07
|
显示全部楼层
哎。我是狼 发表于 2011-11-27 22:42 1 {9 b; V% B; o; Y" u0 \
。。。指针一定要分配内存么。。。
+ d7 F5 H2 ? H9 |0 x D8 n6 ]+ d还有。。函数哪出问题了咩
7 D& y7 p+ p, g你要用指针接用户输入那当然要分内存; Q. P9 M+ A+ X U& d
你的HE函数第三个参数要在子函数里得到strcpy的返回的内存地址要传指针指针,也就是指针的内存地址;要不然是得不到连接后的字符串的地址的。8 E" [9 Z" t+ _0 k" E* O
这样改:5 B4 }5 K* o( u) y
#include<stdio.h># Z; E, z' x1 |, B0 I( W4 l
#include<string.h>
5 t6 @$ J2 n& [7 F" Svoid he(char *p,char *q,char **k)' H# ?: T' u4 ]7 J8 h9 Z
{; D; f5 l6 o% k, ]$ t+ E7 a$ c
*k = strcat(p,q);
/ N- p6 V- G& ]$ N* z* T+ n% v" N: Q, o H$ C! ?3 k+ Z7 s5 ?
}
8 Z+ J3 h' ^* k R1 T hvoid main()- a0 m0 w: w! F1 ]3 t
{8 S* u# Z% F- l1 M
char *s1 = new char[10];
8 a& g: i) K0 g1 c0 J char *s2 = new char[10];
+ A# S- ]9 K5 w+ U C) p char *s3 = new char[20];( \8 L, i! V6 C6 V
gets(s1);gets(s2);4 Y0 S" k+ ~1 {' X3 l a
he(s1,s2,&s3);
* n: q( L( S& x5 d8 C3 F puts(s3);
( y' H% {- ?6 P2 R6 T} |
|