今天学习字符串。出差作息十分不稳定,今天抽空把学习进度搞了一步。感觉这前面这部分和我以前学过的python很像,想起来刚入职我领导就让我自学python然后去做个筛查数据的程序,我当时那个绝望,不过最后居然搞了几个月搞出来个从EXCEL筛选电流差值在多少范围内的所有数据的小程序,真的是功夫不负苦心人,哪怕非计算机专业,只要愿意学就可以学会。当然,python被我扔了一年现在基本又不会了,学习以后保持使用也很重要啊!
//字符串就是一串字符-用双引号括起的就是字符串,如下
int main()
{
"hello world";
return 0;
}
注意:字符串的结束标志是一个\0转义字符。在计算字符串长度的时候\0是结束标志。不算做字符串内容。
//字符串就是一串字符-用双引号括起的就是字符串
int main()
{
//字符数组----一组相同类型的元素
char arr[]="hello";
return 0;
}
此时调试代码我的是ctrl+fn+f10,然后选择调试-窗口-监视,可以看到如下
Hello五个字母确有6个值,因为最后隐藏了一个\0。
int main()
{
//字符数组----一组相同类型的元素
/*char arr[]="hello";*/
char arr1[] = "abc";
char arr2[] = { 'a','b','c' };
printf("%s\n", arr1);
printf("%s\n", arr2);
return 0;
}
监视界面如下
打印结果会出现乱码
这是因为char arr2[] = { 'a','b','c' }的格式被视为没有\0终止符,所以打印完abc后没有终止。加入\0尝试下,
这回正常了。
下面求字符串长度
#include<string.h>
int main()
{
char arr1[] = "abc";
char arr2[] = { 'a','b','c','\0'};
int len = strlen("abc");
printf("%d", len);
return 0;
}
答案是