运用函数mystrcat()拼接2个字符串,该函数完成字符串拼接并返回拼接后字符串地址(要求不使用动态内存),若空间不够,返回NULL;

#include <stdio.h>
#include <string.h> 
#define NULL 0

/* 请在这里填写答案 */
char *mystrcat(char ch[],int n,char str[]) {
	int i,j;
	char *q=ch;
	char *p=(int)NULL;
	if(strlen(ch)+strlen(str)>n-1) return p;
	for(i=0;ch[i]!='\0';i++);
	for(j=0,i=i;str[j]!='\0';j++,i++){
		ch[i]=str[j];
	}
	ch[i]='\0';
	return q;
}

#define SPACE  32
int main()
{
    char ch[SPACE]={0}, str[SPACE]={0};
    char *p;

    gets(ch);
    gets(str);
    p=mystrcat(ch, SPACE, str); //调用函数完成拼接 
    if(p){
       puts(p);    //输出拼接后的字符串         
    }
    else{
        puts("Not enough space.");
    }

    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值