C:什么是字符串数组


一、概念

  1. C语言没有字符串类型,用一片内存空间保存一串字符,这片空间称作字符数组。
  2. 用 ‘\0’ 结尾的字符数组被称为字符串数组。( ‘\0’ 是字符串结束的标志)
  3. 用双引号括起来的都是字符串

二、初始化

  1. char str[6] = { ‘h’, ‘e’, ‘l’, ‘l’, ‘o’, ‘\0’ };//字符串数组
    在这里插入图片描述

  2. char str[6] = “hello”; //简化版写法
    在这里插入图片描述

  3. char str[6] = { ‘h’, ‘e’, ‘l’, ‘l’, ‘o’ };//str[5]的内存上自动赋值为’\0’
    在这里插入图片描述

  4. char str[10] = { ‘h’, ‘e’ };//其余8个元素自动赋值为’\0’
    在这里插入图片描述

  5. char str[] = “hello”;//元素个数可以省略 数组分配空间大小为字符串中实际赋值字节数6
    在这里插入图片描述

  6. char *str = “hello”;//str是指针 存储字符串首地址 指向字符串
    在这里插入图片描述

  7. char str[5] = { ‘h’, ‘e’, ‘l’, ‘l’, ‘o’ };//是字符数组而不是字符串数组,因为没有’\0’
    在这里插入图片描述

三、赋值

  1. 利用 scanf 的 %s 占位符接收字符串。scanf 遇到空格或者Tab或者回车就结束输入在这里插入图片描述
  2. 利用 gets 函数接收字符串在这里插入图片描述

知识点习题

  1. 字符串 str = ‘\u00234\1234’,则 str.length 的值为:

A. 6
B. 3
C. 4
D. 7

正确答案: C

答案解析:

反斜杠(\)在字符串内有特殊含义,用来表示一些特殊字符,所以又称为转义符。

\0:null(\u0000)
\b :后退键(\u0008)
\f :换页符(\u000C)
\n :换行符(\u000A)
\r :回车键(\u000D)
\t :制表符(\u0009)
\v :垂直制表符(\u000B)
\' :单引号(\u0027)
\" :双引号(\u0022)
\\ :反斜杠(\u005C)

所以 \u0023 长度为1,

转义字符是要用\开头的,斜杠后面可跟1至3位八进制数(可以由0开头):或以x开头的1至2位十六进制数

所以长度一共为4.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值