C语言有没有把字符串拆分为数组的函数?用strtok函数实现吧 。
void split( char **arr, char *str, const char *del)//字符分割函数c语言字符串转数组函数的简单定义和实现
{
char *s =NULL;
s=strtok(str,del);
while(s != NULL)
{
*arr++ = s;
s = strtok(NULL,del);
}
}
int main()
{
int i;
char *myArray[4];
char s[] = "张三$|男$|济南$|大专学历$|";
memset(myArray, 0x0, sizeof(myArray));
split(myArray, s, "$|");
for (i=0; i4; i++)
{
printf("%s\n", myArray[i]);
}
return 0;
}
标准C语言中如何将字符串中的内容转换为字符数组?c语言中没有字符串类型c语言字符串转数组函数的变量c语言字符串转数组函数,用字符指针表示字符串c语言字符串转数组函数,char *p = “hello”
可以直接使用数组下表访问字符串中c语言字符串转数组函数的字符c语言字符串转数组函数,例如 p[0]='h',p[1]='e',但最后一个字符p[5]='\0';
C++怎么把string 转换为char型数组1、如果要将string转换为char*,可以使用string提供的函数c_str() ,或是函数data() , data除了返回字符串内容外,不附加结束符'\0',而c_str()返回一个以‘\0’结尾的字符数组 。
2、const char *c_str();
c_str()函数返回一个指向正规C字符串的指针,内容与本string串相同.
这是为了与c语言兼容,在c语言中没有string类型,故必须通过string类对象的成员函数c_str()把string 对象转换成c中的字符串样式.
注意:一定要使用strcpy()函数 等来操作方法c_str()返回的指针
比如:最好不要这样:
char* c;
string s="1234";
c = s.c_str(); //c最后指向的内容是垃圾,因为s对象被析构,其内容被处理
应该这样用:
char c[20];
string s="1234";
strcpy(c,s.c_str());
这样才不会出错,c_str()返回的是一个临时指针,不能对其进行操作
再举个例子:
c_str() 以 char* 形式传回 string 内含字符串
如果一个函数要求char*参数,可以使用c_str()方法:
string s = "Hello World!";
printf("%s",s.c_str()); //输出 "Hello World!"
拓展资料:
1.C++是C语言的继承 , 它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计 , 还可以进行以继承和多态为特点的面向对象的程序设计 。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计 , 因而C++就适应的问题规模而论,大小由之 。
2.C++不仅拥有计算机高效运行的实用性特征 , 同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力 。
3.string 是C++中的字符串 。字符串对象是一种特殊类型的容器,专门设计来操作的字符序列 。
4.不像传统的c-strings,只是在数组中的一个字符序列,我们称之为字符数组,而C + +字符串对象属于一个类,这个类有很多内置的特点 , 在操作方式,更直观,另外还有很多有用的成员函数 。string 的定义为:typedef basic_stringchar string;
5.char是C/C++整型数据中比较古怪的一个,其它的如int/long/short等不指定signed/unsigned时都默认是signed , 但char在标准中是unsigned,编译器可以实现为带符号的,也可以实现为不带符号的,有些编译器如pSOS的编译器,还可以通过编译开关来指定它是有符号数还是无符号数 。
C语言,定义函数交换字符串数组?C语言中交换两个字符串需要借助strcpy函数或者使用自定义交换函数进行交换
如交换a,b数组中的字符串代码:
char a[10] = "abed", b[10] = "efg", t[10];strcpy(t, a);//a复制给tstrcpy(a, b);//b复制给astrcpy(b, t);//t复制给b
推荐阅读
- 怎么看老显卡需不需要降频,怎么看显卡是否降频了
- phpcms怎么发布文章,php文章发布管理系统
- cpu供电的线头是什么,cpu供电的线头是什么线
- 幽浮2用什么cpu,幽浮2电脑配置
- 关于vb.net蓝牙适配器的信息
- 安装mysql5.7zip,安装mysql57的步骤和方法
- 模拟手机经营游戏推荐,手机经营模拟类游戏
- 虚拟机qemu怎么扩容,qemu虚拟机镜像大全
- go语言怎么输入数组 go语言 数组