C++ int转换成char 批量生成文件名

来源:互联网 发布:幂律分布 python 编辑:程序博客网 时间:2024/05/16 12:47

想批量生成文件名,但是没有找到自己想要的,于是就自己写了一点简单的代码,仅供参考

一、整数循环

#include<stdio.h>
#include<iostream.h>
#include<string>
void main()
{
 char *name=".jpg";
 for(int i=0;i<10;i++)
 {
 char front[6];//必须有足够空间来放置转换后的i和定义的name,大小根据生成数量
 itoa(i,front,10);//i转换成字符串放入front
// cout<<front<<"::";//输出front字符
 strcat(front,name);//name加到front结尾
 cout<<front<<endl;
 }

}

运行结果如下:

 

二、字符循环

#include<stdio.h>
#include<stdlib.h>
#include<iostream.h>
#include<string.h>
void main()
{
 char name[6];//用于存储最终字符
 char name1='A';//单个字符,为循环初始值
 char *name2=".jpg";//文件后缀
 char name1_1[2];//用于存储字符的字符数组
 for(int i=0;i<26;i++)
 {
  name1_1[0]=name1;//把字符ABCD...存到第一个
  name1_1[1]='\0';//给字符数组加个结尾,必须有
  strcpy(name,name1_1);
  strcat(name,name2);
  name1++;//字符值自增
  cout<<name<<endl;
 }
}

运行结果如下图:

三、是前两个的补充,即使用sprintf函数实现字符串连接

#include<stdio.h>

#include<iostream.h>

#include<string>

void main()

char name[20],nameTail[10]=".jpg";//数字循环

int i=0;

for(i=0;i<10;i++)

{

sprintf(name,"%d%s",i,nameTail);

cout<<name<<endl;

}

char name1='A';//字符循环

for(i=0;i<26;i++)

{

sprintf(name,"%c%s",name1+i,nameTail);

cout<<name<<endl;

}

}

运行结果如下:



原创粉丝点击