Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- struct {
- char name[40];
- int age;
- } person, person_copy;
- char * strcpy1(char * dest, const char * src)
- {
- char * p = dest;
- while(*src != '\0') {
- *p = *src;
- ++src;
- ++p;
- }
- *p = '\0';
- return p;
- }
- char * strcat1(char * dest, const char * src)
- {
- char * p = dest;
- while(*p != '\0')
- ++p;
- while(*src != '\0') {
- *p = *src;
- ++src;
- ++p;
- }
- *p = '\0';
- return p;
- }
- size_t strlen1(const char * str)
- {
- size_t s = 0;
- while(*str!='\0') {
- ++s;
- ++str;
- }
- return s;
- }
- int strcmp1(const char* str1, const char * str2)
- {
- while(*str1!='\0' && *str2!='\0') {
- if(*str1 > *str2)
- return 1;
- else if(*str1 < *str2)
- return -1;
- ++str1;
- ++str2;
- }
- return 0;
- }
- void * memcpy1 (void * dest, const void * src, size_t num)
- {
- char * p_dest = (char*) dest;
- char * p_src = (char*) src;
- size_t i;
- for(i = 0;i < num; ++i, ++p_src, ++p_dest)
- {
- *p_dest = *p_src;
- }
- return dest;
- }
- int main()
- {
- char input[256] = "Test1";
- char input2[128] = "Test2";
- printf("%lu %lu\n", strlen1(input2), strlen(input2));
- puts(input);
- puts(input2);
- strcat1(input, input2);
- puts(input);
- puts(input2);
- char myname[] = "Andrzej Golota";
- memcpy1 ( person.name, myname, strlen1(myname)+1 );
- person.age = 50;
- memcpy1 ( &person_copy, &person, sizeof(person) );
- printf ("person_copy: %s, %d \n", person.name, person_copy.age );
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement