cainiao367 发表于 2013-11-2 11:38:38

函数调用,遇到type不匹配问题

子函数:   
       char * gtin (void)   {
      char * get;
          .........
          ..........
          return get;
}

主函数中有:
   int main{
      char arry ;
      .........
      arry = gtin (); \
      /********error: incompatible types when assigning to type ‘char’ from type ‘char *’********/
      ..........
      return 0;
}

musilintan 发表于 2013-11-2 11:38:39

指针 = 数组
数组 不能= 指针
可以先用指针接受函数的返回值,然后把指针里的内容拷贝到数组中。strcpy()这个函数应该可以,你试试吧。。。。。

乱闯 发表于 2013-11-2 11:56:57

{:1_1:}把char arry ;   改成char *arry;试试

牡丹花下死做鬼 发表于 2013-11-2 13:17:34

呵呵 LZ 你想更改数组名的内容啊
这个和
int * i;
i = XXXX;
差不多吧是不允许的

musilintan 发表于 2013-11-2 14:50:52

上面那个=是赋值,不是等于号。。。。

cainiao367 发表于 2013-11-2 15:34:24

Root`s_Dream 发表于 2013-11-2 11:56 static/image/common/back.gif
把char arry ;   改成char *arry;试试

像你那么改是可以的,:big

cainiao367 发表于 2013-11-2 15:39:35

musilintan 发表于 2013-11-2 14:50 static/image/common/back.gif
指针 = 数组
数组 不能= 指针
可以先用指针接受函数的返回值,然后把指针里的内容拷贝到数组中。strcpy() ...

哦,申明数组时,内存地址固定了,数组名已经为常量了,所以会不匹配:lol:
页: [1]
查看完整版本: 函数调用,遇到type不匹配问题