- 主题:刚上大学,麻烦推荐学习C语言的编译软件
跨平台的:Qt creator、vs code
这是IDE,编译器用gcc或者clang/llvm。
windows平台专有:visual studio
--
修改:z16166 FROM 114.240.244.*
FROM 114.240.244.*
老黄历了把,现在vs对cpp新标准支持很积极的
【 在 dormouseBHU (dormouseBHU) 的大作中提到: 】
: 装个 msys2,用里面的 gcc。
: 学 C 语言不要用visual studio。微软的编译器对 c 语言新标准支持的很差。现在用 C 语言,至少要用到 c99 的特性。vs 连 c99 都没支持全。后面的 c11 c18 支持的就更差了
: 【 在 shouge111 的大作中提到: 】
: : 刚上大学,麻烦推荐学习C语言的编译软件。最好能兼顾下以后的发展
--
FROM 124.64.18.*
仔细看了一下,可能一个说的是c,一个说的是cpp
c11/c17是支持的,去年9月份的发布:
https://devblogs.microsoft.com/cppblog/c11-and-c17-standard-support-arriving-in-msvc/
Microsoft C/C++ language conformance by Visual Studio version
https://docs.microsoft.com/en-us/cpp/overview/visual-cpp-language-conformance?view=msvc-160
【 在 shouge111 的大作中提到: 】
: 您是一线程序员吗?要给权威最新的回答啊,后面有人说现在情况不一样了
:
--
修改:z16166 FROM 114.240.244.*
FROM 114.240.244.*
好家伙,就讨论个问题,你把整个帖子里的人都骂完了
这种选型问题,必然是各有各的选择,各有各的理由,摆出来讨论一下再正常不过了
另外,楼主上那课的老师有可能指定开发环境
【 在 shortytall 的大作中提到: 】
: 一群人都是借题来秀的,没有好好回答问题的,像极了公司里开会,总有几个卷逼为了秀而把话题扯到外太空。
: 用Dev-C++。
--
FROM 114.240.244.*
麻烦把帖子看完再喷,我后面有说明
新手一般还到不了要关注标准差异的地步,只不过有人提出来了要考虑这点,那就讨论一下。
【 在 dormouseBHU 的大作中提到: 】
: C 和 C++ 是两种独立的语言。各自有独立的标准。vs对cpp新标准支持的再好对你写C程序有个屁用。
:
--
修改:z16166 FROM 114.240.244.*
FROM 114.240.244.*
Support for C11 and C17 standards is available in Visual Studio 2019 version 16.8 and later.
https://docs.microsoft.com/en-us/cpp/overview/install-c17-support?view=msvc-160
【 在 dormouseBHU 的大作中提到: 】
: 他哪里说不一样了? 他说 VS 支持 C++ 新标准,和我说的 VS 不支持 C 新标准有啥关系吗?
:
--
FROM 114.240.244.*
VLA在C11中变成了可选特性,VC目前还不支持可选特性,但是承诺后续会增加一些:
While there is currently no support for any C11 optional features, we are committed to providing the most impactful optional features in future releases.
对于为啥不支持VLA,MS自己有一段说辞:
Variable Length Arrays
Astute readers will note that VLAs are also not supported. Variable length arrays are generally less efficient than comparable fixed sized arrays, and generally inefficient compared to equivalent malloc(), when safely and securely implemented. VLAs provide attack vectors comparable to those of the infamous gets() — deprecated and destined to removal — for opportunities of “shifting the stack” and other exploits. For these reasons we intend not to support VLAs as an optional feature in C11.
这个blog也说了VC在C上面为何这么一直“懒”“矬”的原因:
For many years Visual Studio has only supported C to the extent of it being required for C++.
blog地址:
https://devblogs.microsoft.com/cppblog/c11-and-c17-standard-support-arriving-in-msvc/
【 在 dormouseBHU 的大作中提到: 】
: 连 VLA 都不支持,VS也好意思说自己支持 C11。。。
:
--
FROM 114.240.244.*
又是一年上学季了哦
--
FROM 222.129.205.*
vscode在linux上调试C++有bug,断点经常跑飞,断不下来。clion也有这个问题。直接用gdb自身也有这个问题。
所以应该是gdb的问题。
我现在测试后发现,visual studio + visual gdb插件,调试linux上c++程序则没有这个问题。这个远程调试走的是gdb server,而不是gdb,有可能是这个原因,规避了gdb的bug。
【 在 dreamr 的大作中提到: 】
: vscode
: 发自「今日水木 on ELS-AN00」
--
FROM 114.240.244.*
直接visual studio就行
【 在 shouge111 的大作中提到: 】
: 嗯,用了dev c++,那么后面继续学习是不是该上visual studio了?
:
--
FROM 123.118.191.*