码迷,mamicode.com
首页 > 编程语言 > 详细

C++指针疑难问题

时间:2018-08-15 22:45:13      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:结果   代码   tdd   ++   赋值   初始化   ati   而且   null   

同一个指针,在不同位置输出,中间并没有对变量做任何操作。但输出结果不同。

原因分析,指针初始化有问题。

 

错误代码代码如下:

int Model_No;

float *model_s2 = NULL;;

float *model_PixelValueSum = new float[Model_No];
float *model_average = new float[Model_No];
float *model_standardized_deviation = new float[Model_No];
float *model_StdDevation = new float[Model_No];
float *model_PixelNum = new float[Model_No];

Model_No = 20;

 

指针初始化时,指针的长度为定值或者为NULL。否则,指针是一个随机数,随机指向某个位置,而且随机变动。此处,指针初始化时,Model_No并未被赋值,故指针并未被成功初始化。

修改:

int Model_No;

Model_No = 20;

float *model_s2 = NULL;;

float *model_PixelValueSum = new float[Model_No];
float *model_average = new float[Model_No];
float *model_standardized_deviation = new float[Model_No];
float *model_StdDevation = new float[Model_No];
float *model_PixelNum = new float[Model_No];

 

C++指针疑难问题

标签:结果   代码   tdd   ++   赋值   初始化   ati   而且   null   

原文地址:https://www.cnblogs.com/SunflowerUp/p/9484082.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!