码迷,mamicode.com
首页 > 编程语言 > 详细

【C语言总结】字符串

时间:2015-04-29 15:05:19      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:c语言   字符   char   

字符串的存储

字符串是用字符数组存储的,并且最后一位必须是\0
,编译器会把这个字符数组看做是char*类型的指针。
技术分享

例如:printf("abc") //传递的时abc的地址,并且是a的地址
操作:

char *p;
p = "abc";
char ch;
ch = "abc"[1];

字符串变量

char str[8] = "abcdefg";//会把这几个字符复制到这个字符数组中;

他的存储方式为:
技术分享
如果字符串不够7个就会把剩余的单元填\0
技术分享
如果超出7个就不会把这个数组看成字符串了,字符串后面必须要有\0;

char str[] = "abcdeg";//编译器会自动计算长度,str是首字符的地址
char *str = "abcdef";//str是一个指针指向abcdef首字符的地址,并且str一定要指向一个存在的字符串

字符串的读写

printf("string is %s", str);//
puts(str);

scanf("%s", str);   //首先会跳过空白字符,然后读取,再次遇见空白字符停止读取
gets(str);//遇见换行符才会停止

C语言字符串库

使用C语言字符串库的时候必须包含#include

char str[10];
str = "abc";//错误,不能使用=号运算符把字符串复制到字符数组中

字符串复制函数 strcpy函数

char str1[] = "hello world!";
char str2[10];
strcpy(str2, str1);

字符串拼接函数 strcat函数

strcat(str1, "abc");//这里的str1要有足够控件容下abc

字符串比较函数strcmp函数

strcmp(str1, str2);//相等返回0,str1>str2就返回大于0的数

求字符串长度的函数strlen函数

int len = strlen(str1);

存储字符串的最佳方式

存储字符串的最佳方式就是一个二维数组;

char string[][3] = {"hello", "nihao"};
char *string[] = {"hello","world","I","love","you"};

技术分享

【C语言总结】字符串

标签:c语言   字符   char   

原文地址:http://blog.csdn.net/ttf1993/article/details/45366551

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!