gpt4 book ai didi

c - 从给定参数的文件中反转行

转载 作者:太空宇宙 更新时间:2023-11-04 08:15:02 27 4
gpt4 key购买 nike

我必须编写一个函数 void reverse_file(FILE* file),它一次从参数文件中读取一行到一个本地字符数组缓冲区,该缓冲区的大小是 #defined 作为预处理器常量 MAXLINE。对于每一行,此函数调用前面的 reverse_string 函数来反转该行,然后将反转后的行写入标准输出。

我有 reverse_string 方法

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void reverse_String(char* str);
int main()
{
char str [256];
strcpy_s(str, "Hello");
reverse_String(str);
return 0;
}
void reverse_String(char* str)
{
int i, j;
char temp;
i=j=temp=0;

j=strlen(str)-1;
for (i=0; i<j; i++, j--)
{
temp=str[i];
str[i]=str[j];
str[j]=temp;
}
printf("%s",str);
}

我只需要 reverse_file(FILE* file) 部分的帮助。

感谢任何帮助。

最佳答案

也许是这样的?

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void reverse_String(char* str)
{
int i, j;
char temp;
i=j=temp=0;

j=strlen(str)-1;
for (i=0; i<j; i++, j--) {
temp=str[i];
str[i]=str[j];
str[j]=temp;
}
printf("%s",str);
}

void reverse_File(FILE* file) {
char* line;
size_t len = 0;
ssize_t read;

while ((read = getline(&line, &len, file)) != -1) {
reverse_String(line);
}
}

int main(void) {

FILE * fp;

fp = fopen("Maze.txt", "r");

if (fp == NULL)
exit(EXIT_FAILURE);

reverse_File(fp);
}

关于c - 从给定参数的文件中反转行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36255632/

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