2016-10-12 5 views
-1

Как я могу закончить строку в C? Я сделал функцию, чтобы соединить 2 строки и сделать один. Я читал, что должен заканчивать строку «\ 0», но как это сделать с объявлением вроде этого?Подключение двух строк в один. C

char* string1= "House"; 
char* string2= "is big"; 

ответ

1

Создайте массив, достаточно большой, чтобы соответствовать обеим строкам плюс один ограничитель. Скопируйте первую строку в массив. Сгруппируйте другую строку, используя strcat.

1

Попробуйте этот метод

char* concat(const char *s1, const char *s2) 
    { 
     char *result = malloc(strlen(s1)+strlen(s2)+1); 
     strcpy(result, s1); 
     strcat(result, s2); 
     return result; 
    } 
+0

вы всегда должны напечатанное возвращение память 'malloc' – roottraveller

+1

@rootTraveller [Я не согласен, довольно сильно] (http://stackoverflow.com/questions/605845/do-i- литой на-результат-в-таНос). – unwind

+0

@unwind yes, но 'void *' не получают повышение в более старой версии C. – roottraveller

Смежные вопросы