我是靠谱客的博主 斯文溪流,最近开发中收集的这篇文章主要介绍[C语言] \ 的分割作用和简单使用,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

请先看一段关于字符串的代码

#include<stdio.h>
#include<string.h>
const char chSTR[] = "Don't touch me here";
int main()
{
int len;
len = strlen(chSTR);//计算整个字符串的长度
printf("len = %dn", len);
printf("#%s#n", chSTR);//#用来方便观察字符串起点和终点
return 0;
}

我们先定义一个字符串来表达自己的呐喊。运行结果如下

len = 19
#Don't touch me here#

但是当我们文思泉涌,一行写不下了,怎么办,很简单,改成这样

const char chSTR[] = "Don't 
touch 
me 
here";

运行结果不会改变,也就是说, 衔接了符号下面的一行。

需要注意的是,如果新一行前面有空格或tab,会被算在字符串内,如下

int main()
{
int len;
const char chSTR[] = "Don't 
touch 
me 
here";
len = strlen(chSTR);
printf("len = %dn", len);
printf("#%s#n", chSTR);
return 0;
}
//运行结果
len = 22
#Don't
touch
me
here#

C语言中大多数情况下,空格和换行符是被编译器忽略的,通过适当的换行和空格可以让代码更美观,以下代码效果是一样的。

c = a + b;
c = a +
b;
c = a
+ b;
c = a 
+ b;

而字符串不能用回车分割,所以 最常用的作用是分割换行,让代码肉眼看上去更直观

下面代码由小甲鱼C语言 S1E28课后作业 动动手1.题改写的。(ps.那一题的标准答案在我的编译器上会报一堆警告)
比如下面两个字母,由# 和 空格 构成,

########
##
##
######
##
##
##
######
##
##
##
######
##
##
##
######

可以将每个字母保存

成一个长度为 7*8 = 56 字节的字符串,每次打印8个字符后换一次行。

const char *letters[] = {
"##########
##
######
##
##
##
",
" ###### ##
####
######
####
## ###### "};

但是这样做编计算机理解我的目的了,我自己看不懂了。

所以可以用 分行,目的是让阅读代码的人一眼就能看明白这个蜜汁字符串的真正含义。

#include <stdio.h>
#include <string.h>
//定义一个指针数组,用来存放多个字符串,和 char[2][] 作用类似
const char *letters[] = {
"
########
##

##

######

##

##

##

",
"
###### 
##
##
##

###### 
##
##
##
###### 
"};
int main()
{
int i, j, k;
for(i = 0; i < 7; i++)//分行共打印7行
{
for(j = 0; j < 2; j++)//每行打印两个字母对应的字符
{
for(k = 0; k < 8; k++)//每个字母每行有8个字符
{
printf("%c",letters[j][i*8 + k]);//打印第 j 个字母第i行第k个字符
}
printf("
");//两个字母间打印空格
}
printf("n");
}
return 0;
}
//运行结果
########
######
##
##
##
##
##
######
######
##
##
##
##
##
##
######

这样是不是比较直观了呢

参考:S1E28:函数初体验 | 课后测试题及答案,《带你学C带你飞》【第一季】,CC++交流,鱼C论坛 - Powered by Discuz!

最后

以上就是斯文溪流为你收集整理的[C语言] \ 的分割作用和简单使用的全部内容,希望文章能够帮你解决[C语言] \ 的分割作用和简单使用所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部