正如标题中所述,我有一个函数“ load”,该函数返回一个包含2个int和一个字符数组的结构。该数组位于1D上,看起来像:[################ ### $ $ ####。####。 #。@ ### $#* ### ###############] 我想将其打印为:
##########
###### ##
# $ $ ##
# # .# ##
# . #.@ #
##$# * #
## ######
##########
知道宽度在这里10。 所以我的问题是,如何每10个字符返回到下一行...? 这是我到目前为止所写的内容:
void print_map(map map_loaded){
char *p=map_loaded.p_char;
int height=map_loaded.height;
for(int i=0; i<height; i++){
printf("%c", *p[i]);
}
正如您所看到的,我只知道如何阅读每个字符,但是我不知道如何返回行... 如果有人可以阅读我的代码并给我他/她的反馈,我将不胜感激!预先感谢!
答案 0 :(得分:0)
由于您需要的是每10个字符后换一行,因此只需检查自上次添加新行以来是否已打印10个字符即可。
void print_map(map map_loaded){
char *p=map_loaded.p_char;
int height=map_loaded.height;
for(int i=0; i<height; i++){
printf("%c", p[i]);
if( (i+1)%10==0)
printf("\n");
}