gpt4 book ai didi

c - 对角打印字符串而不是左侧

转载 作者:行者123 更新时间:2023-11-30 16:20:22 25 4
gpt4 key购买 nike

我想逐页打印一个巨大的字符串数组,但是要跳过我不想按 Enter 的页面。我在网上找到的唯一合理的解决方案是使用“stty raw”。也就是说,我最终得到了这段代码

void printAux(char** Strings, int init, int fim){
system("clear");
for(int i = init; i < fim; i++){
printf("%s\n", Strings[i]);
}
}

void printStrings(char** Strings, int tam){

int j = 0;
int i = 0;
char c;

system("stty raw");
printAux(Strings, 0, (tam >= 20 ? 20 : tam));
while((c = getchar()) != 'q'){
if(c == 'a'){
i-= 20;
i = (i < 0 ? 0 : i);
}
else if (c == 'd'){
i += 20;
i = (i > tam ? i - 20 : i);
}
printAux(Strings, i, (i + 20 >= tam ? tam : i + 20));
}

system("stty cooked");

}

它打印它们很好,但是,它像这样打印它们

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

这些行从最后一行结束的行开始打印。我希望它全部位于屏幕左侧。任何帮助将不胜感激

最佳答案

解决方案是替换

printf("%s\n", String[i]);

对于

printf("%s\r\n", String[i]);

关于c - 对角打印字符串而不是左侧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55326045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com