Visual Studio 2017不支持C11新功能_Generic

2023-11-25

谁能告诉我为什么 Visual Studio 2017 不支持 C11 新功能_Generic?我发现这是一个非常有用的功能,但无法在 Visual Studio 2017 中使用。

下面是示例代码:

#include <stdio.h>
#define MYTYPE(X) _Generic((X),\
int:"int",\
float:"float",\
double:"double",\
default:"other")

int main(void)
{
      int d = 5;
      printf("%s\n", MYTYPE(d));
      printf("%s\n", MYTYPE(2.0*D));
      return 0;
}

编译器将给出以下警告和错误:

1>------ Build started: Project: Project1, Configuration: Debug Win32 ------
1>predef.c
1>c:\users\mia\documents\c\listing 16.13\project1\project1\predef.c(11): warning C4013: '_Generic' undefined; assuming extern returning int
1>c:\users\mia\documents\c\listing 16.13\project1\project1\predef.c(11): error C2059: syntax error: 'type'
1>c:\users\mia\documents\c\listing 16.13\project1\project1\predef.c(12): error C2065: 'D': undeclared identifier
1>c:\users\mia\documents\c\listing 16.13\project1\project1\predef.c(12): error C2059: syntax error: 'type'
1>Done building project "Project1.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Visual Studio 2017 不支持任何 C11 功能。你可以插英特尔C编译器进入 Visual Studio(支持 C11)或使用Clang or Gcc.

Quora answer:

  • 向您的 Visual Studio 添加内置的CLANG support
  • 创建新项目
  • 在“平台工具集”的项目属性(常规)中,选择“Visual Studio 2017 - Clang with Microsoft CodeGen (v141_clang_c2)”
  • 在 C/C++“语言”部分中打开“C 语言”标准列表,您可以在其中找到当今所有相关的 C 标准 L C89、C99、C11 ...选择您想要的

之后(和以前一样)VS2017将编译带有“.c”的文件 扩展名为 C,“.cpp”扩展名为 C++。

不要忘记可以更改每个文件的属性 也。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Visual Studio 2017不支持C11新功能_Generic 的相关文章

  • HTML 文档

    有没有一个工具可以从 VS2010 生成的 XML 文档文件生成 HTML 页面 我在谷歌上搜索了这样的工具 但没有找到 我下载并安装了SandCastle 但我不明白如何使用它 尝试使用Sandcastle 帮助文件生成器 http sh
  • 获取当前用户的 NetworkCredential (C#)

    我正在尝试从控制台应用程序调用 Web 服务 并且我需要向客户端提供System Net NetworkCredential object 是否有可能创建一个NetworkCredential启动应用程序的用户的对象而不提示输入用户名 密码
  • 在 2 个 .c 文件之间共享函数

    dir1有dir2 file1 c和file1 h dir2 有 file2 c 现在 如果我想在 file2 c 中访问 file1 c 中定义的函数 我需要在 file1 h 中声明它并在 file2 c 中包含 file1 h 这是一
  • OWIN AuthenticationOptions 在 mvc5 应用程序中运行时更新

    Hi 情况如下 我在 iis 7 上有一个带有 Identity 2 的 MVC 5 应用程序 该应用程序为多个网站提供服务 主机名是某些网站的关键 网站 另一个网站 等等 我决定在我的所有网站上使用谷歌外部登录 每个网站都应该是带有个人
  • 以编程方式更改 Excel 中的字体(Trebuchet MS、Calibari)C#

    我目前正在使用一个 C 应用程序 该应用程序有一个将生成 Excel 文件的类 一切都很顺利 Excel 工作表上填充的数据具有 Times New Roman 字体 我想将其更改为其他字体 Calibari 我怎样才能以编程方式做到这一点
  • 外部剃刀视图看不到外部模型

    我对外部剃刀视图有疑问 在我的项目中 我有主 mvc Web 程序集和动态加载的外部类库程序集 来自 DB 及其自己的控制器 视图和模型 这些程序集在运行时不会直接引用和加载 我能够通过为控制器创建自定义控制器工厂 为视图创建自定义虚拟路径
  • C# Visual Studio 动态代码片段

    我正在开发一个 WinForms 项目 每天都会执行一些重复性的任务 所以我认为创建代码片段 https msdn microsoft com en us library ms165394 v vs 110 aspx会帮助我 但它仅适用于固
  • 用 C# 中的字典中的值替换字符串中的单词

    我有一个简单的dictionary像这样 var fruitDictionary new Dictionary
  • ObjectTrackingEnabled 和 linq-to-sql

    I read here http www sidarok com web blog content 2008 05 02 10 tips to improve your linq to sql application performance
  • 命令中带空格的 Windows C 系统调用

    我无法使用名称和参数中的空格进行系统调用 例如 system c program files something example exe c my files example txt 我尝试过各种我知道的方法来逃避 但没有任何效果 我努力了
  • 错误1316。指定的帐户已存在。 Visual Studio 2017:无法安装包。返回代码 1603

    需要安装 Visual Studio for school 但遇到此错误和另一个错误 Visual Studio fails to install Microsoft Net CoreUWP version 1 1 32 and Win10
  • 如何在 WCF 中反序列化自定义 SOAP 标头?

    我正在尝试向通过 WCF 的所有 SOAP 请求添加自定义标头 我发现这篇精彩的文章 http blogs msdn com b mohamedg archive 2012 10 21 adding custom soap headers
  • 是否有理由为什么用 XmlInclude 修饰的基类在序列化时仍然会抛出类型未知的异常?

    我将简化代码以节省空间 但所提供的内容确实说明了核心问题 我有一个类 它的属性是基类型 有 3 个派生类可以分配给该属性 如果我将任何派生类分配给容器并尝试序列化容器 XmlSerializer 会抛出可怕的错误 类型 x 不是预期的 使用
  • 简单的喷射器将具体类型与生活方式结合起来

    我正在寻找一种可以使用指定的生活方式注册具体类型的方法 基本上如下所示 public void SomeFunction Type concrete Lifestyle lifestyle gt container Register con
  • 如何通过 Excel 互操作对象自动调整列大小?

    下面是我用来将数据加载到 Excel 工作表中的代码 但我希望在加载数据后自动调整列的大小 有谁知道自动调整列大小的最佳方法 using Microsoft Office Interop public class ExportReport
  • 如何进行平衡组捕获?

    假设我有这个文本输入 tes tR R abc aD mnoR xyz 我想提取 ff 输出 R abc R xyz D mnoR xyz R R abc aD mnoR xyz 目前 我只能使用平衡组方法提取组内的内容 如中所示msdn
  • 更快的 WinSock sendto()

    我使用的是 Windows Server 2008 我的程序是用 C 编写的 我在 while true 循环中使用 WinSock2 和 sendto 来发送数据包 代码如下 while true if c snd gt max c sn
  • 64 位随机生成器种子

    我目前正在运行一个具有 8 个以上管道 线程 的多线程模拟应用程序 这些管道运行非常复杂的代码 该代码取决于种子生成的随机序列 然后该序列被归结为单个 0 1 我希望在将种子从主线程传递到处理管道后 这种 随机处理 具有 100 的确定性
  • Unity 错误“内部构建系统错误。后端退出,代码为 -1073740791。”摧毁/杀死了我的项目

    好吧 我可能在这里夸大了 但这是真的 当我开始打开它时 该项目由于错误 内部构建系统错误 后端退出 代码为 1073740791 而被破坏 应用程序 这个项目已经在Google Play上发布了 也许和设置有关 有人可以帮忙吗 完整错误 I
  • 有关 Endian 性和 .Net 的详细信息?

    我有几个关于字节顺序的问题 这些问题足够相关 我保证将它们作为一个问题提出 1 字节顺序是由 Net还是由硬件决定的 2 如果是由硬件决定的 我怎样才能在C 中找出硬件的字节序 3 字节序是否影响二进制交互 例如 OR AND OR 或移位

随机推荐

  • DN 的 JavaScript 正则表达式

    我想要一个正则表达式来验证所有类型的可能 DN 我创建了一个 但效果不太好 A z0 9 1 A z0 9 1 and 其他一些改变它 但徒劳无功 可能的 DN 可以是 CN abcd CN abcd O abcd C us CN abcd
  • 获取函数调用者的范围

    我有一个函数在 ExtJS 第 1433 行的某个地方中断 var createDelayed function h o scope console log arguments logs undefined all round return
  • 使用 jfeinstein10 库的滑动菜单

    我创建了一个示例应用程序来测试滑动菜单的工作原理 下面的屏幕截图显示的是我现在得到的 但是 当我单击类别按钮 如下图所示 时 我应该会看到一个二级菜单 如下面 zomato 应用程序的屏幕截图所示 我怎样才能做到这一点 我是否以正确的方式进
  • pandas read_csv 删除空白行

    我正在读取 CSV 文件作为DataFrame同时定义每列的数据类型 如果 CSV 文件中有空行 此代码会出错 如何读取没有空白行的 CSV dtype material id object location id object time
  • Python标准库真的标准吗?

    Python 标准库是标准吗 如果安装了 Python 那么标准库也会安装吗 The 文档 reads 对于类 Unix 操作系统 Python 通常作为包的集合提供 因此可能需要使用操作系统提供的打包工具来获取部分或全部可选组件 标准库i
  • PHP 会话的安全性

    我知道这个问题已经被问了数十亿次 但我对我的编码安全性非常偏执 强迫症 我正在做一个小项目 会话数据将仅包含 user id 1 用户名我的用户名 登录 true csrf token87cc51ee94178df79cccce2aebc4
  • 在线程应用程序中准确计时一行代码,C#

    假设应用程序是多线程的 在 C 中对线程或一行代码进行计时的最准确方法是什么 亲切的问候 计时线程 到底是什么意思 要精确计算 以实际时间 某件事需要多长时间 请使用 System Diagnostics Stopwatch 我不相信有任何
  • PHP 中的动态常量名称

    我正在尝试动态创建一个常量名称 然后获取该值 define CONSTANT 1 Some value try to use it dynamically constant number 1 constant name CONSTANT c
  • 在 ASP.Net Boilerplate 中,从应用程序服务层调用 SignalR Hub 是一种不好的做法吗?

    我将 Asp Net 样板模板与 ASP Net Core 2 1 一起使用 我在 Web Core 程序集中实现了一个集线器并创建了一个控制器 我可以从任何客户端使用我的集线器订阅 通知数据 这不是我的问题 我想在应用程序服务层中使用此集
  • 如何解组 JSON?

    我正在尝试将 JSON 解组为结构 但是 该结构有一个带有标签的字段 使用反射 我尝试查看标签中是否包含字符串 json 如果是这样 那么要解组的 json 应该简单地作为字符串解组到字段中 Example const data I 3 S
  • 使用 jQuery 更新 flashvars 并重新加载 flash

    我想更新 flashvars 值参数以观看另一个视频
  • 我到底如何使用 nginx 和 Gunicorn 为 Django 应用程序提供静态文件服务器?

    现在 我正在尝试遵循本教程 http honza ca 2011 05 deploying django with nginx and gunicorn 模板网站加载正确 但图像未加载 这是我的应用程序的 config py 文件的一部分
  • Android - 激活系统键锁(又名锁屏)

    我必须激活android的系统键锁 当你按下关闭电源 hang up按钮 看这里 我已经浏览过文档 但我发现的一切都是电源管理器 and 键盘锁管理器 两者似乎都不是解决方案 那么 大家知道如何从 Android 应用程序中实现这一点吗 如
  • Javascript 事件处理程序存储在哪里?

    我试图弄清楚 DOM 如何跟踪事件处理程序 无论是通过使用 jQuery addEventListener 还是通过 HTML 属性 例如 onload myFunc 进行绑定 我读到 jQuery 使用 data 方式来存储 jQuery
  • 简单的 div onclick 显示 javascript

    当我点击任何链接时 相应的 div 就会出现 但是当我单击下一个链接时 新单击的潜水以及之前单击的潜水都会显示 我想隐藏之前的 div 新开发请有人帮助我 这是链接的 html 代码 a class hide href First Impr
  • 更改 VS code 中的 java.home 路径

    I just installed java 11 coz VS code was prompting me to update it to java 11 or newer version After installing java 14
  • 如何使用 TarsosDSP 获得 MFCC?

    我到处搜索 但不知道如何在 Android 上使用 TarsosDSP 提取 MFCC 特征 我知道如何从文件中获取 FFT 有什么帮助吗 查看官方github页面 MFCC 测试文件 public class MFCCTest priva
  • 人们对动态语言有何吸引力? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 Locked 这个问题及其
  • 如何为 Blazor 页面实现自定义授权过滤器

    Blazor 服务器端 NET Core 3 1 x 查看有关授权的示例 我正在尝试获取自定义授权过滤器 属性的解决方案 我只需要在授权期间检查用户身份 https learn microsoft com en us aspnet core
  • Visual Studio 2017不支持C11新功能_Generic

    谁能告诉我为什么 Visual Studio 2017 不支持 C11 新功能 Generic 我发现这是一个非常有用的功能 但无法在 Visual Studio 2017 中使用 下面是示例代码 include