scanf 正在使用未初始化的变量; C [重复]

2023-12-09

我确信这里有一个愚蠢的错误,但是我无法弄清楚。 这是我的代码的一部分:

char *moving;
scanf("%s", moving);

当我用 gcc 编译它时,它显示以下内容:

newmatrix.c:38:7: warning: ‘moving’ is used uninitialized in this function [-Wuninitialized]

第38行是scanf

我该如何解决? 谢谢


您可以在调用之前分配内存scanf()。例如:

char moving[256];
if (scanf("%255s", moving) != 1)
    …oops — presumably EOF…

你可以使用malloc()而不是一个简单的数组,但是你必须记住释放分配的内存。 OTOH,如果您想从读取数据的函数返回数据,那么使用可能会更方便malloc(),但请考虑将指向空间(及其大小?)的指针传递给函数。

或者你可以有scanf()为您分配内存(查看手册页scanf()仔细 - 每周阅读一次,直到你记住(足够)它):

char *moving;
if (scanf("%255ms", &moving) != 1)
    …oops — probably EOF, but perhaps OOM (out of memory)…
…use moving…
free(moving);

是的,这是 POSIX 标准中鲜为人知的选项之一scanf();它不是标准 C 的一部分。

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

scanf 正在使用未初始化的变量; C [重复] 的相关文章

  • 删除文件的最后 10 个字符

    我想删除文件的最后 10 个字符 说一个字符串 hello i am a c learner 是文件内的数据 我只是希望该文件是 hello i am a 文件的最后 10 个字符 即字符串 c learner 应在文件内消除 解决方案 将
  • 如何将 std::string& 转换为 C# 引用字符串

    我正在尝试将 C 函数转换为std string参考C 我的 API 如下所示 void GetStringDemo std string str 理想情况下 我希望在 C 中看到类似的东西 void GetStringDemoWrap r
  • BASIC 中的 C 语言中的 PeekInt、PokeInt、Peek、Poke 等效项

    我想知道该命令的等效项是什么Peek and Poke 基本和其他变体 用 C 语言 类似PeekInt PokeInt 整数 涉及内存条的东西 我知道在 C 语言中有很多方法可以做到这一点 我正在尝试将基本程序移植到 C 语言 这只是使用
  • 类型中的属性名称必须是唯一的

    我正在使用 Entity Framework 5 并且有以下实体 public class User public Int32 Id get set public String Username get set public virtual
  • 如何在 Cassandra 中存储无符号整数?

    我通过 Datastax 驱动程序在 Cassandra 中存储一些数据 并且需要存储无符号 16 位和 32 位整数 对于无符号 16 位整数 我可以轻松地将它们存储为有符号 32 位整数 并根据需要进行转换 然而 对于无符号 64 位整
  • 机器Epsilon精度差异

    我正在尝试计算 C 中双精度数和浮点数的机器 epsilon 值 作为学校作业的一部分 我在 Windows 7 64 位中使用 Cygwin 代码如下 include
  • 传递给函数时多维数组的指针类型是什么? [复制]

    这个问题在这里已经有答案了 我在大学课堂上学习了 C 语言和指针 除了多维数组和指针之间的相似性之外 我认为我已经很好地掌握了这个概念 我认为由于所有数组 甚至多维 都存储在连续内存中 因此您可以安全地将其转换为int 假设给定的数组是in
  • 从经典 ASP 调用 .Net C# DLL 方法

    我正在开发一个经典的 asp 项目 该项目需要将字符串发送到 DLL DLL 会将其序列化并发送到 Zebra 热敏打印机 我已经构建了我的 DLL 并使用它注册了regasm其次是 代码库这使得 IIS 能够识别它 虽然我可以设置我的对象
  • 如何连接重叠的圆圈?

    我想在视觉上连接两个重叠的圆圈 以便 becomes 我已经有部分圆的方法 但现在我需要知道每个圆的重叠角度有多大 但我不知道该怎么做 有人有主意吗 Phi ArcTan Sqrt 4 R 2 d 2 d HTH Edit 对于两个不同的半
  • 需要帮助优化算法 - 两百万以下所有素数的总和

    我正在尝试做一个欧拉计划 http projecteuler net问题 我正在寻找 2 000 000 以下所有素数的总和 这就是我所拥有的 int main int argc char argv unsigned long int su
  • 方程“a + bx = c + dy”的积分解

    在等式中a bx c dy 所有变量都是整数 a b c and d是已知的 我如何找到整体解决方案x and y 如果我的想法是正确的 将会有无限多个解 由最小公倍数分隔b and d 但我只需要一个解决方案 我可以计算其余的 这是一个例
  • 使用 C# 中的 CsvHelper 将不同文化的 csv 解析为十进制

    C 中 CsvHelper 解析小数的问题 我创建了一个从 byte 而不是文件获取 csv 文件的类 并且它工作正常 public static List
  • 结构体的内存大小不同?

    为什么第一种情况不是12 测试环境 最新版本的 gcc 和 clang 64 位 Linux struct desc int parts int nr sizeof desc Output 16 struct desc int parts
  • 两个类可以使用 C++ 互相查看吗?

    所以我有一个 A 类 我想在其中调用一些 B 类函数 所以我包括 b h 但是 在 B 类中 我想调用 A 类函数 如果我包含 a h 它最终会陷入无限循环 对吗 我能做什么呢 仅将成员函数声明放在头文件 h 中 并将成员函数定义放在实现文
  • 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++ 继承的内存布局

    如果我有两个类 一个类继承另一个类 并且子类仅包含函数 那么这两个类的内存布局是否相同 e g class Base int a b c class Derived public Base only functions 我读过编译器无法对数
  • 使用特定参数从 SQL 数据库填充组合框

    我在使用参数从 sql server 获取特定值时遇到问题 任何人都可以解释一下为什么它在 winfom 上工作但在 wpf 上不起作用以及我如何修复它 我的代码 private void UpdateItems COMBOBOX1 Ite
  • C# 使用“?” if else 语句设置值这叫什么

    嘿 我刚刚看到以下声明 return name null name NA 我只是想知道这在 NET 中叫什么 是吗 代表即然后执行此操作 这是一个俗称的 条件运算符 三元运算符 http en wikipedia org wiki Tern

随机推荐

  • AppleScript:如何获取最顶层终端的当前目录

    我想获取最顶层终端选项卡 窗口的当前目录 通过 AppleScript 或其他方式 这并不重要 我怎样才能做到这一点 另一个解决方案 get foregroundterminal curdir fast scpt tell applicat
  • AWS lambda NodeJS运行时:io:在封闭管道上读/写

    我正在尝试执行来自一个的几个异步请求lambda功能 第一次通话resolveEndpoints 成功 第二个失败 2017 11 03 17 13 27 Function oauth callbackHandler timed out a
  • Unity为非泛型接口注册泛型类型

    我的场景 对我来说 看起来非常简单 但我找不到解决方案 我有这样的场景 public class Class
  • 强制 Matlab 输出到命令行

    我正在从 Windows 命令提示符运行 MATLAB 脚本 C Program Files MATLAB R2014B bin matlab nodisplay nosplash nodesktop wait r test m test
  • 在 Material UI 中,如何覆盖选择器选择的组件样式?

    在 Material UI 中 延长之间的距离MuiInputLabel and MuiInput 我必须重写 marginTop 的label MuiInput formControl 然而 createMuiTheme的 overrid
  • C++资源管理的shared_ptr与unique_ptr

    我一直在考虑使用unique ptr vs shared ptr vs own solution 我对后者不以为然 因为我几乎肯定会弄错 但我对两者都有问题unique ptr and shared ptr因为两者都没有准确地捕捉到我想要的
  • 访问另一个 DLL 中的类?

    有没有办法导出和使用另一个 dll 中的类 我有 2 个 dll 我正在尝试访问它们之间的类 想知道这是否可能 有多种方法可以实现这一目标 包括但不限于以下几种 使用运行时包而不是 DLL 然后您可以使用另一个模块中的任何类型 变量等 请注
  • 如何在没有 PerformanceCounter 的情况下获取可用内存和 CPU 使用情况?

    我的 Windows XP 不提供类别处理器或内存 我无法带它来显示它们 我不允许编辑注册表或更改系统文件 有没有办法在不使用 PerformanceCounter 的情况下获取实际的 CPU 使用率和可用内存 我在用着 NET 3 5 a
  • 使用 jQuery,在元素上设置 Draggable 可防止单击可拖动元素时触发模糊

    使用 jQuery 当您在文本框上设置模糊事件并将另一个元素设置为可拖动时 当您单击可拖动元素时 模糊事件不会在 FireFox 中触发 IE 稍微好一点 你得到了模糊事件 但你没有得到可拖动元素上的点击事件 如果您没有在draggable
  • 如何使用python连接到远程Windows机器来执行命令?

    我是 Python 新手 我正在尝试制作一个连接到远程 Windows 计算机并在那里执行命令并测试端口连接的脚本 这是我正在编写的代码 但它不起作用 基本上 我想要它返回本地机器数据 而不是远程机器数据 import wmi import
  • Keras 替换输入层

    我拥有的代码 我无法更改 使用 Resnetmy input tensor作为输入张量 model1 keras applications resnet50 ResNet50 input tensor my input tensor wei
  • KARATE:lowerCaseResponseHeaders 设置为 true 将redirect_uri 中的参数值也设置为小写

    我想用karate configure lowerCaseResponseHeaders true 用于测试环境之一 但问题是它在redirect uri中放入了小写的状态值 该值在responseHeaders locationPOST
  • 是否有一种更简单(更轻便)的方法可以使用 JavaFX 8 将文本置于“区域”中心?

    所以 首先 我已经实现了我想要的 那就是在 区域 的中心显示一定量的文本 截图 右上角 现在 我遇到的问题是如何实现这一点 这是整个选项卡的 FXML 摘录
  • Android SQLite 表未创建

    我正在尝试创建一个统计表 但由于某种原因 直到我调用它才创建StatisticsAdapter insertEntry 首次 之后 我可以删除该代码 重新加载新版本 然后一切正常 由于这在现实生活中行不通 我想知道如何创建一个空表 目前有一
  • 添加 API 应用程序时出现 Azure 逻辑应用程序错误

    我正在使用逻辑应用程序 API 应用程序进行 POC 以从本地 SQL 获取记录 我在 API 应用程序中创建了 SQL 连接器 还创建了逻辑应用程序 但是当尝试在逻辑应用程序设计器中添加 SQL Connector API 应用程序时 它
  • 更新SqlAlchemy多对多关联表中的值

    根据下表 如何更新用户所在的组 我觉得我必须遗漏一些明显的东西 但到目前为止我还没有找到任何东西来说明如何做到这一点 group permission table Table group permission metadata Column
  • 在 WPF 中呈现日志视图的快速方法是什么?

    我正在编写一个需要类似日志的视图 类似于 IM 客户端在对话中显示消息的方式 的应用程序 并且每秒可能有许多更新 速度在这里是一个问题 由于大量传入事件而导致应用程序锁定是一个可能的问题 我需要选择和基本文本格式 因此手动渲染可能会变得相当
  • JQuery 对象承诺的目的是什么?

    几年来 我一直在处理一个兼职问题 其中一些 DOM 元素用 jquery 加载html函数调用后无法立即访问该函数 该行为有点像在不等待文档就绪事件的情况下执行函数 虽然 html 假设是同步的 这所以答案 还有这个one 建议使用承诺ht
  • 如何在wpf中设置TAborder

    我有一个问题 我制作了一个运行良好的 wpf 应用程序 但是我想设置每个表单的制表符顺序 但我在 Vs2008 Express 版本中没有得到任何制表符顺序 我该如何解决这个问题 有谁可以帮助我吗 提前致谢 沙申克 要使 TabIndex
  • scanf 正在使用未初始化的变量; C [重复]

    这个问题在这里已经有答案了 我确信这里有一个愚蠢的错误 但是我无法弄清楚 这是我的代码的一部分 char moving scanf s moving 当我用 gcc 编译它时 它显示以下内容 newmatrix c 38 7 warning