问题标签 [null-pointer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 无法在 Cpp 函数中返回空指针
我无法在此方法结束时返回 nullptr?我需要导入某种库吗?
c - 在 sizeof 操作中取消引用空指针是否有效
我遇到了一段代码,对我来说应该会因分段错误而崩溃,但它可以顺利运行。有问题的代码加上相关的数据结构如下(上面有相关的注释):
为什么这行得通?我收集到char *的大小将解析为给定架构上指针的大小,但它不应该在取消引用 -pointer 时崩溃和烧毁吗?NULL
java - NullPointerException in a list based implementation of a simple message board
I'm trying to create a list structure for a simple message board usinsg lists of topics, which are themselves lists of messages, with my own implementation of binodes. However I'm getting a null pointer exception when I'm trying to add a post to my topic.
My code is as follows: TestHarness.main
Thanks for helping.
c - 设置一个指针,保持 NULL
我正在尝试实现一个链表,但遇到了一个非常顽固和令人沮丧的问题。这是相关的代码。
现在的问题是它正在打印
“最后一个为空”
经常但不打印出来
“当前为空”
一次。如果 current 不为空并且我设置 last = current 那么为什么 last 保持为空?
感谢您的任何见解
c++ - 如何创建一个指针数组并使用 **P 将其指向 NULL?
如何使用 **P 创建一个指针数组并将其指向 NULL?
假设我编码如下。
现在我想将其中一些设为 NULL
如果我只是像上面那样编码,那么它会给我一个警告,而且上面的方法在如何使变量为 NULL 方面也是错误的。那么我该怎么做呢?
java - Hashmap 中的 NullPointerException 错误
我在这部分代码上花费了无数个小时,这给了我一个空指针异常。我不明白它为什么会发生或如何阻止它。我已经尝试过之前在 stackoverflow 上发布的所有方法。这是读取数据文件并将每一行放入哈希图中的函数。
然后我用这个在 main 中运行它:
callnumber“QA76.73.J38S265”作者“Walter Savitch,Kenrich Mock”标题“Absolute Java”出版商“Addison-Wesley”年份“2009”callnumber“P98.C6116”标题“计算语言学”线程“main”java 中的异常。 lang.NullPointerException 组织“计算语言学协会”在 librarysearch.FileIO.readDataFromFile(FileIO.java:160) 年“2008”在 librarysearch.FileIO.main(FileIO.java:405) Java 结果:1 构建成功(总时间: 1秒)
我在发生错误的代码中写了。为什么会这样?我不明白,如果任何人都可以请帮助,将不胜感激。
c++ - 对象引用未设置为对象的实例 (C++/CLI)
在下面的代码中,我收到此错误:对象引用未设置为对象的实例
它在另一个类中被调用:
在“int tmp = this -> temp;”行中运行时 这是一个未定义的值!
为什么呢?怎么了?
c - (int *)0 是空指针吗?
这可以被认为是这个问题的扩展(我只对 C 感兴趣,但添加 C++ 来完成扩展)
6.3.2.3.3 的 C11 标准说:
值为 0 的整数常量表达式,或转换为 type 的此类表达式
void *
称为空指针常量。
我个人对此的看法是,它0
表示(void *)0
空指针,其整数值实际上可能不是 0,但这不包括将 0 强制转换为任何其他类型。
但是,标准继续:
如果将空指针常量转换为指针类型,则生成的指针,称为空指针,...
它涵盖(int *)0
为空指针,因为 cast 是在转换方法下列出的显式转换(C11,6.3)。
但是,仍然让我想知道的是以下短语
...或这样的表达式转换为类型
void *
...
有了上述语义,这句话似乎完全没用。问题是,这句话完全没用吗?如果不是,它有什么影响?因此,是否(int *)0
是空指针?
另一个可以帮助讨论的问题如下。被(long long)123
认为是“123 转换为long long
”,或“123 带有类型long long
”。换句话说,是否有任何转换(long long)123
?如果没有,则上面的第二个引号不包含(int *)0
空指针。
java - 如何正确地为对象赋值,它们的赋值会引发异常
在 java 中,可能很容易需要做一些事情,例如实例化一个 BufferedWriter 对象。这可以通过以下方式完成:
请注意 w 在 try-catch 块之前声明。这样做是为了在 try-catch 之后使用变量在适当的范围内。它使用空指针初始化,否则像 netbeans 这样的 IDE 会警告该变量可能尚未分配。但是,IDE 仍然抱怨当您到达 w.write() 时,w 可能有一个空值。这很有意义,因为 try 块可能会失败!
有没有一种更优雅、更明智的方法来做到这一点,并且不会导致像我的 IDE 上面提醒我的那样的逻辑问题?
我意识到我可以将 w 所做的一切都包装在 try 块中,但这对我的任务来说是不可行的。如果还有其他选择,我还能如何初始化 w?
谢谢!