c – 使用C通过引用传递数组
发布时间:2020-12-16 10:31:25  所属栏目:百科  来源:网络整理 
            导读:是的,我已经读过这个问题答案: Passing an array by reference in C?.我遇到了类似的问题,并从该问题中实现了相同的想法. 但是,我仍然从以下代码中得到错误: #include iostreamvoid FillArray(int** myArray){ free( *myArray ) ; * myArray = (int*) mall
                
                
                
            | 
                         
 是的,我已经读过这个问题&答案: 
 Passing an array by reference in C?.我遇到了类似的问题,并从该问题中实现了相同的想法. 
  
  
但是,我仍然从以下代码中得到错误: #include <iostream>
void FillArray(int** myArray)
{
   free( *myArray ) ;
   * myArray = (int*) malloc(sizeof(int) * 2);
   *myArray[0] = 1;
   *myArray[1] = 2;
}
int main()
{
   int* myArray = NULL;
   FillArray(& myArray);    
   return 0;
} 
 FillArray函数结束后,我收到了以下运行时错误: 
 我正在使用Visual Studio,打开Visual C Empty Project.并且文件名为main.cpp.这是否意味着它是用C编译器而不是C编译器编译的?如果是这样,我怎样才能打开一个只会编译C编译器的文件?我尝试用main.c重命名main.cpp,但仍然有同样的问题. (我问这个问题,因为我读了一些关于“通过引用传递”的内容,并发现它在C和C中有所不同.) 对不起这个非常基本的问题. 如有任何帮助,我将不胜感激, SAIT. 解决方法
 优先权没有像你期望的那样发挥作用.试试这些: 
  
  
  
        (*myArray)[0] = 1; (*myArray)[1] = 2; (注意:iostream不是C.它是C.) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!  | 
                  
