youxixingzhet 发表于 2022-2-27 13:51:56

在线求!

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




Q1.
这个指针数组里面存放的 \\####@\ 是什么意思啊,为啥会有两个//放在字符前面。

Q2.
@这个符号放在数组里是什么意思啊?

Q3.
编译的时候会警告是啥意思啊?

c_cpp_python 发表于 2022-2-27 15:18:26

猜是打印 FISHC, 为什么那样写我也看不懂... 我只是猜着写了一个应该差不多的

#include <stdio.h>

int main()
{
const char *letters[] = {
"\
########\n\
##      \n\
##      \n\
######\n\
##      \n\
##      \n\
##      \n\n\
",
"\
####\n\
## \n\
## \n\
## \n\
## \n\
## \n\
####\n\n\
",
"\
###### \n\
##    ##\n\
##      \n\
###### \n\
      ##\n\
##    ##\n\
###### \n\n\
",
"\
##   ##\n\
##   ##\n\
##   ##\n\
#########\n\
##   ##\n\
##   ##\n\
##   ##\n\n\
",
"\
###### \n\
##    ##\n\
##      \n\
##      \n\
##      \n\
##    ##\n\
###### \n\n\
"
};
        for (int i = 0; i < sizeof(letters)/sizeof(letters); i++){
                printf("%s", letters);
        }
        return 0;
}

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

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

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

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

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

youxixingzhet 发表于 2022-2-27 17:22:59

那/这个是啥意思 分隔的吗

c_cpp_python 发表于 2022-2-27 18:39:04

youxixingzhet 发表于 2022-2-27 17:22
那/这个是啥意思 分隔的吗

要注意区分 / 和 \

\ 后跟字符代表转义
常用的 \n 代表回车 \t 代表制表符
另外比如你想用 printf 输出双引号,那么可以用 \"
\ 用在一行的末尾,其实就是告诉编译器:我这行还没写完,我把剩余的内容写下面一行去了
页: [1]
查看完整版本: 在线求!