- UID
- 864
- 斋米
-
- 斋豆
-
- 回帖
- 0
- 积分
- 62579
- 在线时间
- 小时
- 注册时间
- 2010-3-29
- 最后登录
- 1970-1-1
|
发表于 2011-11-28 19:23:07
|
显示全部楼层
哎。我是狼 发表于 2011-11-27 22:42 
* O9 F& s5 q/ ~% i# w。。。指针一定要分配内存么。。。+ Q8 u& k a& p
还有。。函数哪出问题了咩 : j# `. q8 z R# F T8 l8 I& K
你要用指针接用户输入那当然要分内存! D9 @3 \0 x5 e z; u' W9 E
你的HE函数第三个参数要在子函数里得到strcpy的返回的内存地址要传指针指针,也就是指针的内存地址;要不然是得不到连接后的字符串的地址的。, j4 x+ E* v& ?6 E$ A2 f( f: ?' g
这样改:2 @1 A R/ e) |) u3 @2 |
#include<stdio.h>
7 p' N- P: l7 A; [7 c5 k+ M#include<string.h>
7 L' f* O& t1 U; `void he(char *p,char *q,char **k)
9 d1 F% c9 D- a) ]{
* k+ p/ i! c2 H h *k = strcat(p,q);! h& S9 h7 n; o4 w m+ D
1 ^2 w- i" V5 j9 j$ b" E}
, k) e- B# C. S" V1 ^# ]void main(), k0 M8 ^2 a) u8 @8 c) o; D }
{
3 ?8 i8 `) n9 p7 L* S$ n$ a ] char *s1 = new char[10];
- ^- u8 n. ~% r/ d char *s2 = new char[10];2 L7 O& T$ X5 s/ n) \
char *s3 = new char[20];0 C8 t- F5 v% O4 R4 |# v5 |
gets(s1);gets(s2);# z3 s& {; }4 y* ~
he(s1,s2,&s3);' l# T1 \2 E) Q
puts(s3);
# m- \2 X# S$ ?} |
|