Chcę zwrócić tablicę znaków z funkcji. Następnie chcę wydrukować go w main
. Jak mogę odzyskać tablicę znaków w funkcji main
?sposób zwracania tablicy znaków z funkcji w 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;
}
Proszę powiedzieć, co robię źle?
nie masz żadnych błędów ?? –
Twój kompilator powinien był ci powiedzieć, że 'test = substring (i, j, * s);' wyłączyłeś '' ', gdy nie powinieneś. –
Otrzymuję komunikat o błędzie: typy powodujące konflikt dla 'podłańcuchów' – sayan