gpt4 book ai didi

当我尝试使用命令行参数编译 C 源文件时,WSL 出现编译错误

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

编译器在编译下面的 C 代码时失败,抛出杂散字符错误:

#include "stdio.h"  
int main(int argc, char *argv[]) {
     int count;  
     printf("The command line has %d arguments:\n", argc - 1);  
     for(count = 1; count < argc; count++) {  
       printf("%d: %s\n", count, argv[count]);  
      }  
      printf("\n");  
 
      return 0;  
}

编译器:gcc 5.4.0 20160609 Ubuntu 16.04.3

错误的屏幕截图:here

顺便说一句,其他C文件(如“hello world”)也可以成功编译。

最佳答案

继续我的评论,“您的代码中没有错误”,因此您收到的任何错误要么是由于您的编译字符串导致的在 Windows 编辑器中编辑该文件已损坏 WSL 中的文件。

要将代码(没有警告或错误)编译为默认的 a.out 可执行文件,您可以使用以下简单的命令行:

gcc -Wall -Wextra yourfilename.c

注意:始终在启用警告的情况下进行编译,至少为-Wall -Wextra。您可以添加更多单独的警告选项以及添加 -pedantic 这将启用更多选项。

如果您想添加一些附加选项、优化级别和编译所依据的 C 标准,以及为可执行文件提供自定义名称而不是默认的 a.out,你可以使用:

gcc -Wall -Wextra -pedantic -std=gnu11 -O3 -o yourexename yourfilename.c

尝试一下,通过编辑问题并将收到的错误的确切文本添加到问题中,报告您收到的确切错误(如果有)。

如果您还有任何其他问题,请告诉我。

关于当我尝试使用命令行参数编译 C 源文件时,WSL 出现编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45529868/

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