关于char类型数组的两种输出方法

简介: 关于char类型数组的两种输出方法

char类型数组有两种输出方法


1.for循环输出


char arr[] = { 'a','b','c','d','e','f','g' };
for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); i++)
{
    printf("%c", arr[i]);
}

08dfd294c019a843e575d6d9deba99f8_4644537af46c49dbad140042048ea9e0.png

2.字符串输出(即把字符型数组当成字符串)


char arr[] = { 'a','b','c','d','e','f','g','\0'};
 printf("%s", arr);

0462be7c329c85e0494f96b8bcd16461_29a34b849d744e4d80be8794444619c3.png


值得注意的是,使用第二种方法时,要在数组末端加上‘\0’,因为字符串输出时需要检测‘\0’,检测到‘\0’的停止输出,若没有‘\0’则会出现乱码,运行结果如下:

6f16d4bb59e2f0662b1b5a740b589fe2_284ee51716ee44b49176980c6e9ba6b2.png


补充:字符型数组也可以存储整型数字,输出时会将整型数字当成ASCII码,并转换为相应的字符


当字符型数组存储整型数字时,使用字符型输出,数组末端加上0,因为‘\0’的ASCII码就是0


char arr[] = { 73, 32, 99, 97, 110, 32, 100, 111, 32, 105, 116 , 33, 0 };
printf("%s", arr);

50a7c6e07aefc4820d5f858ae0e76985_060414ce79a245bd9c9de5e725d43eaa.png

目录
相关文章
|
9天前
|
存储 SQL 关系型数据库
【YashanDB知识库】MySQL迁移至崖山char类型数据自动补空格问题
**简介**:在MySQL迁移到崖山环境时,若字段类型为char(2),而应用存储的数据仅为&#39;0&#39;或&#39;1&#39;,查询时崖山会自动补空格。原因是mysql的sql_mode可能启用了PAD_CHAR_TO_FULL_LENGTH模式,导致保留CHAR类型尾随空格。解决方法是与应用确认数据需求,可将崖山环境中的char类型改为varchar类型以规避补空格问题,适用于所有版本。
|
1月前
|
存储 SQL 关系型数据库
【YashanDB 知识库】MySQL 迁移至崖山 char 类型数据自动补空格问题
问题分类】功能使用 【关键字】char,char(1) 【问题描述】MySQL 迁移至崖山环境,字段类型源端和目标端都为 char(2),但应用存储的数据为'0'、'1',此时崖山查询该表字段时会自动补充空格 【问题原因分析】mysql 有 sql_mode 控制,检查是否启用了 PAD_CHAR_TO_FULL_LENGTH SQL 模式。如果启用了这个模式,MySQL 才会保留 CHAR 类型字段的尾随空格,默认没有启动。 #查看sql_mode mysql> SHOW VARIABLES LIKE 'sql_mode'; 【解决/规避方法】与应用确认存储的数据,正确定义数据
|
6月前
|
存储 Java Windows
java基础(9)数据类型中的char类型以及涉及到的转义字符
Java中的char类型可以存储一个中文字符,因为它占用两个字节。转义字符允许在代码中使用特殊字符,例如`\n`表示换行,`\t`表示制表符,`\\`表示反斜杠,`\'`表示单引号,`\"`表示双引号。可以使用`\u`后跟Unicode编码来表示特定的字符。
139 2
java基础(9)数据类型中的char类型以及涉及到的转义字符
|
5月前
|
SQL 存储 关系型数据库
SQL判断CHAR类型字段不为空的方法与技巧
在SQL查询中,判断一个CHAR类型字段是否不为空是一个常见的需求
|
7月前
|
存储 自然语言处理 编译器
C语言中的char类型
C语言中的char类型
566 1
|
9月前
详细解读C++char类型函数
详细解读C++char类型函数
99 0
|
存储 关系型数据库 MySQL
面试时被这样一个问:”存储MD5值应该用VARCHAR还是用CHAR?
一个5年工作经验的小伙伴,在面试的时候被这样一个问题。说”存储MD5值应该用VARCHAR还是用CHAR“,他一时间不只如何选择,感觉用VARCHAR也可以,用CHAR也行。希望我来帮忙分析一下。
170 0
|
1月前
|
SQL
【YashanDB 知识库】通过触发器复制 varchar(4000 char) 列的数据导致乱码
**问题简介:** 客户在使用触发器将表 A 中 varchar(4000 char) 列的数据复制到表 B 时,发现表 B 中的数据出现乱码且与表 A 不一致。此问题影响所有 YashanDB 版本,原因是 YashanDB 在处理触发器场景下的大长度 varchar 数据复制时存在机制错误。为避免该问题,建议将列长度修改为 varchar(2000 char) 或更小。数据正确性无法保证,需谨慎处理。 **验证方法:** 可通过创建表 A 和 B 及相应触发器进行测试。
【YashanDB 知识库】通过触发器复制 varchar(4000 char) 列的数据导致乱码
|
6天前
|
SQL
【YashanDB知识库】通过触发器复制varchar(4000 char)列的数据导致乱码
【YashanDB知识库】通过触发器复制varchar(4000 char)列的数据导致乱码
|
27天前
|
SQL
【YashanDB 知识库】通过触发器复制 varchar(4000 char) 列的数据导致乱码
**简介:** 某客户在使用触发器将表 A 的 varchar(4000 char) 列数据复制到表 B 时,出现数据乱码且不一致的问题。经分析,YashanDB 在处理触发器场景下的 varchar(4000 char) 列数据复制时存在机制错误,影响所有版本。建议将列长度修改为 varchar(2000 char) 或更小以规避问题。通过特定 SQL 可验证该问题是否存在。

热门文章

最新文章