我無法從除主函數之外的其他文件返回指向字符數組的指針。它總是說「分段錯誤」。但是,如果我在與main相同的文件中編寫函數,則沒有問題。返回指向除主函數之外的其他文件中的函數的字符數組的指針
/* this is in mainfunc.c file*/
int main()
{
char ch[5]={'a','b','c','d','\0'};
char *res=retchararray(ch);
printf("%s\n",res);/*I get segmentation fault only when I use this printf*/
}
/* this function is in other file newfile.c */
char *retchararray(char *p){
char *str;
str=p;
unsigned int len=strlen(p);
*(str+len)='e';
*(str+len+1)='\0';
return str;
}
我在Mac OS上使用netbeans做C編程。
可以請一些人告訴我是什麼問題?或者我在這裏犯了一些錯誤?
我將'char ch [5]'更改爲'char ch [6]'以適應額外的'e'字符。 – Ram