Tôi muốn trả về một mảng ký tự từ một hàm. Sau đó, tôi muốn in nó trong main
. làm thế nào tôi có thể lấy lại mảng ký tự trong hàm main
?cách trả về mảng char từ một hàm trong C
#include<stdio.h>
#include<string.h>
int main()
{
int i=0,j=2;
char s[]="String";
char *test;
test=substring(i,j,*s);
printf("%s",test);
return 0;
}
char *substring(int i,int j,char *ch)
{
int m,n,k=0;
char *ch1;
ch1=(char*)malloc((j-i+1)*1);
n=j-i+1;
while(k<n)
{
ch1[k]=ch[i];
i++;k++;
}
return (char *)ch1;
}
Hãy cho tôi biết tôi đang làm gì sai?
nào bạn nhận được bất kỳ lỗi nào ?? –
Trình biên dịch của bạn nên đã nói với bạn rằng 'test = substring (i, j, * s);' bạn đang dereferencing 's' khi bạn không nên. –
Tôi nhận được thông báo lỗi: các loại xung đột cho 'chuỗi con' – sayan