Ubuntu下VScode编译报错:File not recongnized不可识别的文件格式


问题:
在这里插入图片描述

总结:问题就是Linux下文件名 .后缀 你没有打出来。

解决:代码文件加后缀,如main应为main.cpp


一、案情还原

  • 这是一个不会出错的C++代码:
    在这里插入图片描述
  • 你保存写好的代码(这时你没打后缀.cpp)
    在这里插入图片描述
  • 你高高兴兴地编译(F5),结果
    在这里插入图片描述
    在这里插入图片描述
    提示你的配置文件出错(Open launch.json),经过一番痛苦地探究(%&……#$),恭喜你一无所获

二、没有后缀的文件

1.诞生

在这里插入图片描述
在这里插入图片描述

2.可以通过图形操作打开

在这里插入图片描述

3.但不能被终端、编译器识别

(1)终端

你只能通过名字来访问,但只要有后缀就出错。
在这里插入图片描述

(2)编译器如VScode

g++

一个g++编译命令是这样的:

g++ main.cpp -o main

前面的main.cpp代表的你的代码文件,后面的main代表.out形式的文件。总之,就是前面的main.cpp是有后缀的代码文件.

看到了没,你那个没有后缀的文件,这样是找不到,编译失败的。
在这里插入图片描述

VScode

同理,编译器的机制其实就是g++命令的封装,自然效果爆炸。所以才会提示file not recognized

改后

ok
在这里插入图片描述

(3)记住它们的样子!!

没有后缀的代码文件在VScode中长这样
在这里插入图片描述
有后缀的代码文件在VScode中长这样
在这里插入图片描述