-1
我对C编程颇为陌生,并且遇到了一个奇怪的问题。我有一个全局变量tri这是一个结构(tri_fact)与几个成员。这些成员中的两个(tri.Q和tri.R)依次是密集矩阵的不同类型的结构(dense_mat)。退出函数C时的全局变量更改值
我有一个函数来初始化一些这些密集矩阵为零。我遇到的问题是当初始化函数退出时,其中一个矩阵具有垃圾值。然而,在退出之前,一切看起来都不错。
struct tri_fact tri;
void init_func(){
/*do some initializations*/
/*tri.Q and tri.R looks good*/
}
void func(){
init_func();
/* tri.R looks good, but tri.Q is filled with junk */
}
我是否缺少一些基本的东西?
您需要发表更多的代码。根据你迄今所说的话,它应该可以工作。请创建一个[演示该问题的最小示例](http://stackoverflow.com/help/mcve) –
很难说,看不到'init_func'中的代码 –
简单的猜测:您使用了一些指针,这些指针正在被覆盖的toblocal变量当函数退出时。 – nneonneo