当前位置: 首页 > news >正文

.cc扩展名是什么语言?C语言必须用.c为扩展名吗?主流编程语言扩展名?Java为什么不能用全数字的文件名?

.cc扩展名是什么语言?

.cc是C++语言使用的扩展名,一种说法是它是c with class的简写,当然C++语言使用的扩展名不止.cc和.cpp, 还包含.cxx, .c++, .C等,这些在不同编译器系统采用的默认设定不同,需要区分使用。当然,编译器提供编译选项将源代码指定为特定编程语言的方式,例如gcc提供-x c++将源代码指定为c++代码,哪怕源代码扩展名是.java也会被当做c++代码。

关于.cc扩展名,Google内部的C++语言开发规范将.cc作为标准C++文件扩展名,但这只是Google,其它公司没有明确表明一定用.cc.

C语言必须用.c为扩展名吗?

不一定,扩展名只是为了方便提示文件类型,但编译器并不按照它作为绝对标准,编译器是务实的,只要源代码内容是C语言即可。其它编程语言也有类似的规则。

主流编程语言扩展名

  • 机器语言
    • .bin/.hex
  • 汇编语言
    • .asm .s
    • .S 经过预编译的汇编语⾔源代码
  • C语言
    • .c
  • C/ObjC/C++头文件
    • .h
    • .hpp .hxx一般是C++头文件
  • C++源代码
    • .cpp .cc .cxx .C .c++
  • 已经预处理过的C源代码⽂件
    • .i ==> C源代码
    • .ii ==> C++源代码
  • Objective-C/Objective-C++源代码⽂件
    • .m .mm
  • C#源代码
    • .cs
  • Java源代码
    • .java
  • Python源代码
    • .py
  • PHP源代码
    • .php
  • Perl源代码
    • .pl
  • JavaScript
    • .js
  • TypeScript
    • .ts
  • Ruby
    • .rb
  • Go语言
    • .go
  • Rust
    • .rs
  • Swift语言
    • .swift
  • Kotlin
    • .kt
  • Lua语言
    • .lua
  • Fortran
    • .f ==> Fortran 77源代码
    • .for
    • .f90 ==> Fortran 90源代码
    • .f95 ==> Fortran 95源代码
    • .f03 ==> Fortran 2003源代码
    • .f05 ==> Fortran 2005源代码
    • .f08 .f2008 ==> Fortran 2008源代码
    • .f20 ==> Fortran 2020源代码
  • Pascal
    • .pas

默认扩展名可以改吗?

一般而言,编译器没那么死板,有的编译器允许指定选项把特定文件扩展当做特定类型源代码,当然也有通吃的。

  • C#允许任意扩展名
    csc xxx.zzz
  • GCC/G++可以用-x指定文件源代码类型

Java为什么不能用全数字的文件名?

有时,我们想用一个简单的文件名以方便做测试,比如1.c或者1.swift等等。但到Java语言就发现不奏效了。Java语言要求文件名(不包括扩展名)和类名保持一致,数字虽然可以当文件名,但不能当类名(标识符的限制)。

  • 除了Java,基本没有哪个主流编程语言有此限制,除掉没有类支持的C,ObjC/C++/C#都没有规定一定文件名和类名的一致性。


若文章对您有帮助,欢迎关注 程序员小迷 。助您在编程路上越走越好!

微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。

我是 程序员小迷 (致力于C、C++、C#、Android、iOS、Java、Kotlin、Objective-C、Swift、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。

http://www.lryc.cn/news/529804.html

相关文章:

  • 【MyDB】4-VersionManager 之 3-死锁及超时检测
  • 【Linux】使用管道实现一个简易版本的进程池
  • 【OpenGL】OpenGL游戏案例(二)
  • 28. 【.NET 8 实战--孢子记账--从单体到微服务】--简易报表--报表定时器与报表数据修正
  • Java 泛型<? extends Object>
  • FPGA|使用quartus II通过AS下载POF固件
  • “新月之智”智能战术头盔系统(CITHS)
  • php:代码中怎么搭建一个类似linux系统的crontab服务
  • 【LeetCode: 958. 二叉树的完全性检验 + bfs + 二叉树】
  • MinDoc 安装与部署
  • 从0开始使用面对对象C语言搭建一个基于OLED的图形显示框架(基础组件实现)
  • windows系统如何检查是否开启了mongodb服务
  • VS安卓仿真器下载失败怎么办?
  • 计算机网络一点事(24)
  • 视频拼接,拼接时长版本
  • 制造企业的成本核算
  • doris:高并发导入优化(Group Commit)
  • LLMs之WebRAG:STORM/Co-STORM的简介、安装和使用方法、案例应用之详细攻略
  • 鸿蒙HarmonyOS实战-ArkUI动画(页面转场动画)_鸿蒙arkui tab 切换动画
  • 图漾相机-ROS2-SDK-Ubuntu版本编译(新版本)
  • 小程序的协同工作与发布
  • 解锁维特比算法:探寻复杂系统的最优解密码
  • 计算机网络一点事(20)
  • java求职学习day23
  • Vue-cli 脚手架搭建
  • 认识小程序的基本组成结构
  • Spring Boot 热部署实现指南
  • 深度学习编译器的演进:从计算图到跨硬件部署的自动化之路
  • 【数据结构】_顺序表经典算法OJ(力扣版)
  • 数据结构:队列篇