#include <stdio.h>
int main()
{
//char name[] = {'i', 't', 'c', 'H', 's', 't', '\0'};
char name[] = "itcast";
name[3] = 'H';
/*
int size = sizeof(name);
printf("%d\n", size);
*/
printf("我在%s上课\n", name);
return 0;
}
// 字符串的一个初始化
void test2()
{
// \0的ASCII码值是0
// 都是字符串
char name[8] = "it";
char name2[8] = {'i', 't', '\0'};
char name3[8] = {'i', 't', 0};
char name4[8] = {'i', 't'};
// 不算是一个字符串(只能说是一个字符数组)
char name5[] = {'i', 't'};
}
/*
void test()
{
// 'a' 'b' 'A'
// "jack" == 'j' + 'a' + 'c' + 'k' + '\0'
char name[10] = "jack888\n";
// 把数组传入,仅仅是个警告
printf(name);
printf(name);
printf(name);
printf("57843578435");
}*/
#include <stdio.h>
/*
\0的作用
1.字符串结束的标记
2.printf("%s", name2);
会从name2这个地址开始输出字符,直到遇到\0为止
*/
int main()
{
char name[] = "itc\0ast";
char name2[] = {'o', 'k'};
//printf("%s\n", name2);
printf("%s\n", &name2[1]);
return 0;
}
/*
strlen函数:计算字符串长度
1.计算的是字符数,并不是字数。一个汉字算作3个字符
2.计算的字符不包括\0
3.从某个地址开始数字符的个数,直到遇到\0为止
*/
// strlen函数声明在string.h文件中
#include <string.h>
#include <stdio.h>
int main()
{
//int size = strlen("哈haha");
//printf("%d\n", size);
/*
char name[] = "itcast";
char name2[] = {'0', '\0', '6'};
int size = strlen(name2);
printf("%d\n", size);
*/
char name[] = "itcast";
//printf("%s\n", name);
printf("%c\n", name[3]);
return 0;
}
字符串数组
#include <stdio.h>
int main()
{
char name[] = "jack";
char name1[] = "rose";
char name2[] = "jim";
char name3[] = "jake";
char names[2][10]= {"jack", "rose"};
//printf("%s\n", names[0]);
//printf("%c\n", names[0][3]);
char names2[2][10] =
{
{'j', 'a', 'c', 'k', '\0'},
{'r', 'o', 's', 't', '\0'}
};
return 0;
}