C语言字符串拼接

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011028771/article/details/52727874

在实验中需要生成大量的文件名,文件名是字母加编号的形式,因此需要用到字符串拼接。
文件名:string
编号:1,2,3,4……
后缀:.bin
代码如下:

#include<stdio.h>
#define FILENUM 65
int stringJoint(char *fileName,int num) {
    char *name = "string";
    char number[5];
    char *suffix = ".bin";
    itoa(num, number, 10);
//  printf("%s\n", name1);
//  printf("%s\n", name2);
    strcpy(fileName, name);
    strcat(fileName, number);
    strcat(fileName, suffix);
//  printf("%s\n", fileName);
    return 0;
}

int main() {
    char *fileName = (char *)malloc(sizeof(char) * 20);
    char error = 0;
    for (int i = 1; i < FILENUM; i++) {
        error = stringJoint(fileName, i);
        if (error != 0) 
            printf("Get number %d failed!\n", i);
        else
            printf("%s\n", fileName);
    }

    return 0;
}

该例子主要用到的是C语言提供的字符串拼接函数strcat和字符串复制函数,该函数在该博客中用介绍
http://blog.csdn.net/u011028771/article/details/52622721
关于字符串拼接还有其他的方法可以用,再后续的探讨中会继续更新……

另外用到了数字转字符串函数itoa()

函数名 作用
itoa() 将整数转为字符串
itoa() 将长整型转换为字符串
uitoa() 将无符号长整型转换为字符串

该函数有三个参数:第一个参数是需要转换的数字,第二个参数是转换后赋值给谁,第三个是转换的基数(即十进制、二进制、十六进制)。
atoi()功能与itoa()相反。

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试