【C语言】数据类型之字符,字符串(1)


前言

字符串定义:字符串也可以简称为串,在数据结构中,串是一种在数据元素的组成上具有一定的约束条件的线性表,即要求组成线性表的所有数据元素都是字符,所以说串是一个有穷的字符序列。
为什么要学习字符串?我们所以显示的东西都是字符串,他对于我们来说很重要。


提示:以下是本篇文章正文内容,下面案例可供参考

一、字符及字符串数组

字符是什么?
字符就是ASCII码表上的一些字符。给位可以自己搜索

1).字符的定义
类型名为:char 他为1字节,他只能为一个字符
字符需要用单引号 ’ ’

char c = 'a';//初始化
c = 'b';//赋值
//输出
printf("%c",c);//使用格式化输出符:%c

2).字符数组
初始化及赋值:

char ch[5] = { 'A', 66, 'C', 'D', 69};
char ch[5] = { 'A', 66, 'C' }; //初始化部分元素,其余默认初始化为 0 
char ch[] = { 'A', 66, 'C' }; //初始化时,可不写个数
//赋值
ch[0]="B";

怎么输出
(1).使用for循环

int i = 0;
 for (i = 0; i < 5; i++) //一个一个元素输出
 	printf("%c ", ch[i]);

3).字符串
(1).字符’\0’介绍与字符’0’、0的区别

定义:以 \0 结尾的字符数组,\0 就是数字 0,ASCII 表上第一个字符 ‘\0’ : 字符
数字 0 的字符形式,\叫转义字符,\0 共同构成 1 个字符,站 1 字节
0 : 数字 0 ,数值上’\0’,NULL,0 三者一样
作用在不同场景,以经验区分 ‘0’ : 字符 0,48 的字符形式

(2).字符串的使用
字符串本质就是一个字符数组,只是字符串是用双引号的一串
使用:

//s:string 字符串
char s[20]={"hello world"};//初始化
char s2[20] = {"hello 人才程序猿!"}
//输出
printf("%s",s);//使用格式化字符串"%s"
//输入
scanf_s("%s",&s,20);//如果使用的vs的,字符串变量后面需要加字符串的元素
//那么scanf就不用了
//赋值:只能一个一个元素赋值
s[0] = 'o';

4).能不能写中文?写中文要注意什么
(1)首先我们要知道,一个汉字2字节
(2)我们可以像写普通的字母一样写中文
注意!中文2字节,不要超过大小

5).自带\0 结尾

二、字符串指针

字符串指针初始化

char s[10]={"aaa"};
char *sp = s;
char *spp = "hello world";
//C语言最标准的写法:加const
const char *cc = "heew";

中间 '\0’啥意思?
'\0’字符串结尾的意思
示例:“he\0llo”,那么字符串就是: he 字符串只找结尾

其他问题
空格会作为分隔符,不会输入到字符串中

想输入空格怎么办?使用 gets_s 函数

char s[20]={'\0'};
gets_s(s,20);

下期预告:字符串操作函数

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

人才程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值