【发布时间】:2013-02-20 09:23:43
【问题描述】:
我正在尝试用 C++ 编写一个非常简单的指针赋值,如下所示:
float *src;
if(someCondition == true)
src = somePointer;
else
src = someOtherPointer;
但是,当我尝试访问 src 时,我收到一条警告说“取消引用空指针(从变量 src 加载)”
另外,如果我尝试像这样为 src 赋予一些初始值:
float *src = aPointer;
if(someCondition == true)
src = somePointer;
else
src = someOtherPointer;
我收到一条警告说分配给 src 的初始值从未被读取。尽管这似乎并没有影响我正在尝试做的事情,但我正在努力摆脱所有潜在的问题。这里似乎有什么问题?
感谢任何帮助。谢谢!
【问题讨论】:
-
someCondition的类型是什么? -
somePointer和someOtherPointer是什么? -
请告诉我们
somePointer和someOtherPointer是如何建立的。 -
float * src = someCondition ? somePointer : someOtherPointer;
-
if(variableX > 350) src = &(anArray[0]) 否则 src = &(anArray[50])。这就是我要实现的条件的要点。谢谢!
标签: c++ dereference