Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

C-Kurs/concat/Musterlösung

< C-Kurs‎ | concat
Version vom 13. September 2011, 19:28 Uhr von 77.185.26.106 (Diskussion) (Die Seite wurde neu angelegt: „<pre> #include <stdio.h> #include <stdlib.h> int string_length(char* string) { int result = 0; while(string[result]!='\0') result++; return result; } char*…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
#include <stdio.h>
#include <stdlib.h>

int string_length(char* string)
{
	int result = 0;
	while(string[result]!='\0')
		result++;
	return result;
}

char* concat(char *string1, char *string2)
{
	int len1 = stringLength(string1);
	int len2 = stringLength(string2);
	char* result = malloc(len1+1+len2+1);
	int i;	
	for(i=0; i<len1; i++)
		result[i] = string1[i];
	result[len1] = ' ';
	for(i=0;i<len2;i++)
		result[len1+i+1] = string2[i];
	result[len1+1+len2] = '\0';
	return result;
}

int main(int argc,char** argv)
{
	printf("TEST: %s\n",concat("Wort1","Wort2"));

	//Zusatz
	if(argc>=3)
	{	
		char *current = concat(argv[1],argv[2]);
		int i=0;
		char *result = current;
		for(i=3; i<argc; i++)
		{
			result = concat(current,argv[i]);
			free(current);
			current = result;
		}
		printf("PARAMETER: %s\n",result);
	}else{
		printf("Nicht genug Parameter");
	}
}