鱼C论坛

 找回密码
 立即注册
查看: 19592|回复: 14

[函数快查] strcat -- 连接字符串

[复制链接]
发表于 2016-3-31 01:00:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
strcat 函数文档


函数概要:

strcat 函数用于连接两个字符串。

将源字符串拷贝并连接到目标数组存放的字符串后边,此过程将覆盖第一个参数的结束符 '\0'。

两个参数的位置不应该重叠。


函数原型:
#include <string.h>
...
char *strcat(char *dest, const char *src);

参数解析:

参数
含义
dest 指向用于存放字符串的目标数组,它应该包含一个字符串,并且提供足够容纳连接后的总字符串长度的空间(包含结束符 '\0')
src 指向待连接的源字符串,该参数不应该与 dest 参数指向的位置发生重叠


返回值:

返回值是指向目标字符串的指针。


演示:
#include <stdio.h>
#include <string.h>

int main()
{
        char str1[100] = "Original String";
        char str2[] = "New String";

        strcat(str1, " ");
        strcat(str1, str2);

        printf("str1: %s\n", str1);

        return 0;
}
搜狗截图20160331014142.png

版权归鱼C工作室(www.fishc.com)所有,转载请注明来源!

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-2-15 10:59:51 | 显示全部楼层
get it
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-31 19:23:20 | 显示全部楼层
为什么我会影响到上一行数组
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-11-20 09:31:44 | 显示全部楼层
超级棒!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-23 18:23:55 | 显示全部楼层
我觉得,是把str1中的“\0”前面的和str2拼接。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-6-4 17:35:48 From FishC Mobile | 显示全部楼层
后面str2的语句会被修改吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-2-18 16:09:55 | 显示全部楼层
讲得好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-23 16:37:27 | 显示全部楼层
为什么这个函数里把str2连接到str1,str2不会改变,但是把str1连接到str2,发现str1改变了,为什么?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-8-10 17:35:54 | 显示全部楼层
为啥拼空格之后,下一条就拼不上了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-30 14:59:41 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-7-21 14:11:39 | 显示全部楼层
我试了Dev-C++结果可以越界
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-7-21 14:12:19 | 显示全部楼层
额外减小 发表于 2022-7-21 14:11
我试了Dev-C++结果可以越界

就是不用提供足够空间
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-1-16 17:09:04 | 显示全部楼层
as843743021 发表于 2019-6-4 17:35
后面str2的语句会被修改吗

hui
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-12-4 20:57:21 | 显示全部楼层
66666666666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-5 15:44:43 | 显示全部楼层
#include <stdio.h>

double add(double,double);
double sub(double,double);
double mul(double,double);
double divi(double,double);
double (*cal(char))(double,double);

double add(double a,double b)
{
        return a+b;
}

double sub(double a,double b)
{
        return a-b;
}

double mul(double a,double b)
{
        return a*b;
}

double divi(double a,double b)
{
        return a/b;
}

double (*cal(char c))(double,double)
{
        switch(c)
        {
                case '+': return add;
                case '-': return sub;
                case '*': return mul;
                case '/': return divi;
        }
}

int main()
{
        double a,b;
        //char c;
       
        printf("请输入两个数;");
        scanf("%lf%lf",&a,&b);
       
        printf("对这两个数进行加减乘除后的结果是:");
        printf("%.2lf ",(*cal('+'))(a,b));
        printf("%.2lf ",(*cal('-'))(a,b));
        printf("%.2lf ",(*cal('*'))(a,b));
        if(b != 0)
        {
               
                printf("%.2lf\n",(*cal('/'))(a,b));
        }
        else
        {
                printf("除数不能为0!\n");
        }
       
        return 0;
}

ps:MD5的只能半成品,没搞懂为什么unsigned char 类型,能用 十六进制输出?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-4 01:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表