C 中的结构初始化出现错误:预期表达式

2024-02-25

我有一个这样的结构:

struct foobar {
    int i;
    char *word;
};

我知道这会起作用:

struct foobar {
    int i;
    char *word;
};
struct foobar three = {3, "three"};

为什么以下不起作用?

struct foobar {
    int i;
    char *word;
} three;
three = {3, "three"};

它会给出错误:expected expression before ‘{’ token.


它不起作用,因为 C 不知道 {3, "two"} 应该是什么类型; C 不会查看“=”运算符的左侧来猜测您的类型,因此您那里没有任何类型信息。在 C99 中,您可以使用复合文字来实现此目的:

three = (struct foobar) { 3, "three" };

强制转换给出了类型、大括号中的值和初始值设定项。结果被分配给你的变量三。

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

C 中的结构初始化出现错误:预期表达式 的相关文章

  • WPF DataGrid 多选

    我读过几篇关于这个主题的文章 但很多都是来自 VS 或框架的早期版本 我想做的是从 dataGrid 中选择多行并将这些行返回到绑定的可观察集合中 我尝试创建一个属性 类型 并将其添加到可观察集合中 它适用于单个记录 但代码永远不会触发多个
  • 调用 McAfee 病毒扫描引擎

    我收到客户的请求 要求使用他们服务器上的 McAfee 病毒扫描将病毒扫描集成到应用程序中 我做了一些调查 发现 McScan32 dll 是主要的扫描引擎 它导出各种看起来有用的函数 我还发现提到了 McAfee Scan Engine
  • 类型中的属性名称必须是唯一的

    我正在使用 Entity Framework 5 并且有以下实体 public class User public Int32 Id get set public String Username get set public virtual
  • 如何从 Visual Studio 将视图导航到其控制器?

    问题是解决方案资源管理器上有 29 个项目 而且项目同时具有 ASP NET MVC 和 ASP NET Web 表单结构 在MVC部分中 Controller文件夹中有大约100个子文件夹 每个文件夹至少有3 4个控制器 视图完全位于不同
  • 如何从本机 C(++) DLL 调用 .NET (C#) 代码?

    我有一个 C app exe 和一个 C my dll my dll NET 项目链接到本机 C DLL mynat dll 外部 C DLL 接口 并且从 C 调用 C DLL 可以正常工作 通过使用 DllImport mynat dl
  • -webkit-box-shadow 与 QtWebKit 模糊?

    当时有什么方法可以实现 webkit box shadow 的工作模糊吗 看完这篇评论错误报告 https bugs webkit org show bug cgi id 23291 我认识到这仍然是一个问题 尽管错误报告被标记为RESOL
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • 需要帮助优化算法 - 两百万以下所有素数的总和

    我正在尝试做一个欧拉计划 http projecteuler net问题 我正在寻找 2 000 000 以下所有素数的总和 这就是我所拥有的 int main int argc char argv unsigned long int su
  • 为什么这个字符串用AesCryptoServiceProvider第二次解密时不相等?

    我在 C VS2012 NET 4 5 中的文本加密和解密方面遇到问题 具体来说 当我加密并随后解密字符串时 输出与输入不同 然而 奇怪的是 如果我复制加密的输出并将其硬编码为字符串文字 解密就会起作用 以下代码示例说明了该问题 我究竟做错
  • C# xml序列化必填字段

    我需要将一些字段标记为需要写入 XML 文件 但没有成功 我有一个包含约 30 个属性的配置类 这就是为什么我不能像这样封装所有属性 public string SomeProp get return someProp set if som
  • 空指针与 int 等价

    Bjarne 在 C 编程语言 中写道 空指针与整数零不同 但 0 可以用作空指针的指针初始值设定项 这是否意味着 void voidPointer 0 int zero 0 int castPointer reinterpret cast
  • LINQ:使用 INNER JOIN、Group 和 SUM

    我正在尝试使用 LINQ 执行以下 SQL 最接近的是执行交叉联接和总和计算 我知道必须有更好的方法来编写它 所以我向堆栈团队寻求帮助 SELECT T1 Column1 T1 Column2 SUM T3 Column1 AS Amoun
  • C 函数 time() 如何处理秒的小数部分?

    The time 函数将返回自 1970 年以来的秒数 我想知道它如何对返回的秒数进行舍入 例如 对于100 4s 它会返回100还是101 有明确的定义吗 ISO C标准没有说太多 它只说time 回报 该实现对当前日历时间的最佳近似 结
  • 编译时展开 for 循环内的模板参数?

    维基百科 here http en wikipedia org wiki Template metaprogramming Compile time code optimization 给出了 for 循环的编译时展开 我想知道我们是否可以
  • 使用特定参数从 SQL 数据库填充组合框

    我在使用参数从 sql server 获取特定值时遇到问题 任何人都可以解释一下为什么它在 winfom 上工作但在 wpf 上不起作用以及我如何修复它 我的代码 private void UpdateItems COMBOBOX1 Ite
  • 对于某些 PDF 文件,LoadIFilter() 返回 -2147467259

    我正在尝试使用 Adob e IFilter 搜索 PDF 文件 我的代码是用 C 编写的 我使用 p invoke 来获取 IFilter 的实例 DllImport query dll SetLastError true CharSet
  • C++ 中的 include 和 using 命名空间

    用于使用cout 我需要指定两者 include
  • C++ 中的参考文献

    我偶尔会在 StackOverflow 上看到代码 询问一些涉及函数的重载歧义 例如 void foo int param 我的问题是 为什么会出现这种情况 或者更确切地说 你什么时候会有 对参考的参考 这与普通的旧参考有何不同 我从未在现
  • DotNetZip:如何提取文件,但忽略zip文件中的路径?

    尝试将文件提取到给定文件夹 忽略 zip 文件中的路径 但似乎没有办法 考虑到其中实现的所有其他好东西 这似乎是一个相当基本的要求 我缺少什么 代码是 using Ionic Zip ZipFile zf Ionic Zip ZipFile
  • 使用 WGL 创建现代 OpenGL 上下文?

    我正在尝试使用 Windows 函数创建 OpenGL 上下文 现代版本 基本上代码就是 创建窗口类 注册班级 创建一个窗口 choose PIXELFORMATDESCRIPTOR并设置它 创建旧版 OpenGL 上下文 使上下文成为当前

随机推荐

  • 如何给AutoHotkey脚本添加管理员权限?

    我将其编译为可执行文件 但要打开它 我必须右键单击并按 以管理员身份运行 我希望它每次运行时都请求管理员权限 但该怎么做呢 我不能这样做 因为当我将其复制到第二台计算机时它不起作用 尝试将其添加到自动执行部分 脚本顶部 If the scr
  • Ruby(猴子修补数组)

    我在猴子修补数组类时遇到问题 这项作业有8 specs被满足 我只会向您提供我遇到问题的部分的 RSpec 和书面要求 因为其他一切似乎都通过了 以下是 Array Class Monkey 补丁的书面要求 写一个新的new map的实例上
  • Flex 布局混合行和列

    我可以使用这个布局float容易地 但很难处理弹性盒 css a background red float left width 30 height 100px b c background green overflow hidden he
  • Asp.Net MVC + CSLA + DDD 可能吗

    前几天 我被要求审查一个基于 ASP NET MVC CSLA DDD 域驱动设计 的系统 该系统的第一个版本是基于ASP NET MVC CSLA 第二个版本是在此基础上添加了 DDD 原因是 嗯 我不知道是什么 当我查看两种不同架构的图
  • Anaconda Navigator 无法创建新环境

    我在工作中需要使用Python 今天刚刚安装了Anaconda Navigator 我可以毫无问题地打开 Navigator GUI 我可以打开 创建新环境 提示 我填写详细信息并点击 确定 导航器在基本 根 选项卡下为我请求的环境创建一个
  • 由于 gcc 编译器版本不受支持,Caffe 编译失败

    我挣扎着Caffe http caffe berkeleyvision org 汇编 不幸的是我没能编译它 Steps http caffe berkeleyvision org installation html cmake compil
  • 单击后防止 JButton repaint()

    我有一个按钮 我想在点击后更改背景 我的问题是按钮自动呼叫paintComponent 如何防止这种情况发生 我预计点击按钮后按钮将是蓝色的 但它仍然是红色的 package test import java awt Color impor
  • 使用 TI-MSP430 的 DSP 的 C/C++ 库或示例代码

    我正在开发一个小型 dsp 项目 进行音频处理 例如 奈奎斯特速率采样 过采样和欠采样 重建 该项目是使用我的板实时嵌入的 我当前使用的板 芯片是德州仪器 TI 的 msp430 系列 MSP430F5438 实验板http focus t
  • 获取目录时出现 System.UnauthorizedAccessException

    我对 C 非常陌生 所以我一直在从事一个小型宠物项目 我创建了一个小程序 用于将目录的大小与给定的大小进行比较 如果该目录相同或更大 则会记录该目录的路径 long size Convert ToInt32 Size 1024 1024 s
  • 来自 JSON 对象的动态 UI

    我正在尝试找到一种将动态 JSON 对象转换为有效 HTML 网页的方法 这个想法是能够将需要显示的内容从物联网设备推送到云端 并让用户能够输入和保存配置 json 看起来像这样 loginConfiguration username st
  • Groovy 的隐藏功能?

    Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的答案或互动 看起来 Groovy 在这个线程中被遗忘了 所以我只会向 Groovy 问同样的问题 尝试限制
  • 有没有办法让客户端脚本也从 Ara 框架中的代理/集群服务自动加载?

    首先 基于 SSR 的 MFE 的一个很棒的框架 我正在尝试 Ara Svelte Micro App1 Vue Micro App 2 Nuxt JS Appshell 如中所述https ara framework github io
  • C 字符串:简单问题

    我在下面初始化了三个变量 char c1 Hello char c2 H e l l o 0 char c3 Hello 我知道 c1 和 c2 是相同的 并且它们都是字符串 因为它们以 0 结尾 然而 c3与c1和c2不同 这是因为 c3
  • Infiniband 寻址 - 主机名到 IB 地址(无需 IBoIP)

    我刚刚开始熟悉 infiniband 我想了解可用于解决 infiniband 节点的方法 基于代码的示例来自 RDMA 使用 IB 动词进行读写 http thegeekinthecorner wordpress com 2010 09
  • 如何使用 linq 从 DataTable 中过滤掉空行?

    我有一个从 Excel 数据构建的数据表 但有时 Excel 返回的行中所有字段都为空 我想一般性地过滤掉这些 而不考虑列名 我认为 Linq 可以很好地做到这一点 但要实现这一点有点困难 到目前为止 这就是我得到的 var nonempt
  • 如何在浏览器中从Go服务器下载文件

    我的代码从远程 url 获取文件并在浏览器中下载文件 func Index w http ResponseWriter r http Request url http upload wikimedia org wikipedia en b
  • iPhone 配置实用程序无法识别 iOS 8 设备

    随着 iOS 8 最近的更新 我无法使用 iPhone 配置实用程序加载我的测试设备 该程序根本无法识别装有 iOS 8 的设备 当 iOS 7 发布时 iPCU 不需要更新 尽管它确实可以与 iOS 7 配合使用 Apple 支持网站上的
  • 批处理文件对多个目录中的所有文件执行命令

    我想制作一个运行此命令的批处理文件 C Program Files x86 IrfanView i view32 exe C Users digi admin TIFFs OLD DIRECTORY tif ini C Users digi
  • Visual Studio:如何中断已处理的异常?

    我希望 Visual Studio 在发生处理的异常时中断 即我不只是想看到 第一次机会 消息 我想调试实际的异常 例如我希望调试器在异常时中断 try System IO File Delete someFilename catch Ex
  • C 中的结构初始化出现错误:预期表达式

    我有一个这样的结构 struct foobar int i char word 我知道这会起作用 struct foobar int i char word struct foobar three 3 three 为什么以下不起作用 str