История изменений
Исправление Deleted, (текущая версия) :
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, char ** argv)
{
if (argc != 3)
return 1;
const char * str1 = argv[1];
const char * str2 = argv[2];
size_t size1 = strlen(str1);
size_t size2 = strlen(str2);
char * result = NULL;
if (size1 >= size2 && memcmp(str1, str2, size2) == 0)
{
size_t result_size = size1 - size2;
result = malloc(result_size);
memcpy(result, str1 + size2, result_size);
}
printf("Original string: %s\n", str1);
printf("Prefix: %s\n", str2);
if (result)
{
printf("The string with prefix removed: %s\n", result);
free(result);
}
else
{
printf("The string has no prefix!\n");
}
return 0;
}
vadim@aquila:/tmp$ gcc -Wall 111.c
vadim@aquila:/tmp$ ./a.out qwerty qwe
Original string: qwerty
Prefix: qwe
The string with prefix removed: rty
vadim@aquila:/tmp$ ./a.out qwerty 1qwe
Original string: qwerty
Prefix: 1qwe
The string has no prefix!
vadim@aquila:/tmp$ ./a.out qw qwe
Original string: qw
Prefix: qwe
The string has no prefix!
vadim@aquila:/tmp$
Исходная версия Deleted, :
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, char ** argv)
{
if (argc != 3)
return 1;
const char * str1 = argv[1];
const char * str2 = argv[2];
size_t size1 = strlen(str1);
size_t size2 = strlen(str2);
char * result = NULL;
if (size1 >= size2 && memcmp(str1, str2, size2) == 0)
{
size_t result_size = size1 - size2;
result = malloc(result_size);
memcpy(result, str1 + size2, result_size);
}
printf("Original string: %s\n", str1);
printf("Prefix: %s\n", str2);
if (result)
{
printf("The string with prefix removed: %s\n", result);
free(result);
}
else
{
printf("The string has no prefix!\n");
}
return 0;
}
vadim@aquila:/tmp$ gcc -Wall 111.c
vadim@aquila:/tmp$ ./a.out qwerty qwe
Original string: qwerty
Prefix: qwe
The string with prefix removed: rty
vadim@aquila:/tmp$ ./a.out qwerty 1qwe
Original string: qwerty
Prefix: 1qwe
The string has no prefix!
vadim@aquila:/tmp$ ./a.out qw qwe
Original string: qw
Prefix: qwe
The string has no prefix!
vadim@aquila:/tmp$