gpt4 book ai didi

c - 调试传递两个参数的 C 程序

转载 作者:行者123 更新时间:2023-11-30 19:05:42 24 4
gpt4 key购买 nike

我已经修复了代码中的一些语法错误,现在程序可以正常编译了。但是当我执行程序时,输出文件为空。输出文件应具有输入文件的相反顺序的内容。我正在尝试在 CodeLite IDE 中调试代码。

我需要使用传递的两个参数(inputFile 和outputFile)来调试代码。我似乎在 CodeLite IDE 中找不到该选项。我该怎么做?

#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>


#define BUFFER_SIZE 256
int main (int argc, char *argv[]){
FILE *inputFile, *outputFile;
int fileSize;
int pointer;
char buffer[BUFFER_SIZE];

/* Check for correct user's inputs. */
if( argc !=3 ) {
fprintf(stderr, "USAGE: %s inputFile outputFile.\n", argv[0]);
exit(-1);
}

/* Make sure input file exists. */
if( (inputFile = fopen(argv[1], O_RDONLY))) {
fprintf(stderr, "Input file doesn't exist.\n");
exit(-1);
}

/* Create output file, if it doesn't exist. Empty the file, if it exists. */

if((outputFile = fopen(argv[2], "a+"))) {
fclose(inputFile);
exit(-1);
}


/* Find the size of the input file. */
fileSize = fseek(inputFile, 0, SEEK_END);


/* Read input file and write to output file in reversed order.*/

for(pointer=fileSize-1; pointer>=0; pointer--) {


/*Write content in the buffer to the output file */

while(!feof(inputFile))
{
fgets(buffer, BUFFER_SIZE, inputFile); //reads 256 bytes at a time
fputs (buffer , outputFile );
}

}

fclose(inputFile);
fclose(outputFile);

return(0);
}

最佳答案

http://codelite.org/LiteEditor/ProjectSettings :

项目设置>>常规>>命令参数

关于c - 调试传递两个参数的 C 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49366039/

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