Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdarg.h>
- #include <string.h>
- char* concat(int NrArgumente, ...)
- {
- va_list argument; //declaram variabila de tip va_list
- int i;
- char *p;
- int lungimeSirNou = 0;
- va_start(argument, NrArgumente); //apelam va_start() si o initializam
- for (i = 0; i < NrArgumente; i++)
- lungimeSirNou += sizeof(va_arg(argument, char*)) + 1;
- p = (char*)malloc(sizeof(char) * lungimeSirNou + 1);
- strcpy(p, "");
- va_start(argument, NrArgumente);
- for (i = 0; i < NrArgumente; i++) {
- strcat(p, va_arg(argument, char*));
- strcat(p, " ");
- }
- va_end(argument); // terminare parcurgere + eliberare memorie
- return p;
- }
- int main(void)
- {
- char *p = concat(3, "Ana", "are", "mere");
- printf("%s ", p);
- scanf("%*c");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement