Advertisement
EvgeniiKraaaaaaaav

5.1(Strdup)

Dec 5th, 2018
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.36 KB | None | 0 0
  1. //https://vk.com/evgenykravchenko0
  2.  
  3.                 ___                                        ___                   ___    
  4.                /  /\                  ___                 /  /\                 /  /\    
  5.               /  /:/_                /__/\               /  /:/_               /  /:/_  
  6.              /  /:/ /\               \  \:\             /  /:/ /\             /  /:/ /\  
  7.             /  /:/ /:/_               \  \:\           /  /:/_/::\           /  /:/ /:/_
  8.            /__/:/ /:/ /\          ___  \__\:\         /__/:/__\/\:\         /__/:/ /:/ /\
  9.            \  \:\/:/ /:/         /__/\ |  |:|         \  \:\ /~~/:/         \  \:\/:/ /:/
  10.             \  \::/ /:/          \  \:\|  |:|          \  \:\  /:/           \  \::/ /:/
  11.              \  \:\/:/            \  \:\__|:|           \  \:\/:/             \  \:\/:/  
  12.               \  \::/              \__\::::/             \  \::/               \  \::/  
  13.                \__\/                   ~~~~               \__\/                 \__\/    
  14.                             ___                                            
  15.                            /__/\                ___                 ___    
  16.                            \  \:\              /  /\               /  /\    
  17.                             \  \:\            /  /:/              /  /:/    
  18.                         _____\__\:\          /__/::\             /__/::\    
  19.                        /__/::::::::\         \__\/\:\__          \__\/\:\__
  20.                        \  \:\~~\~~\/            \  \:\/\            \  \:\/\
  21.                         \  \:\  ~~~              \__\::/             \__\::/
  22.                          \  \:\                  /__/:/              /__/:/
  23.                           \  \:\                 \__\/               \__\/  
  24.                            \__\/                        
  25. #include <stdio.h>
  26.  
  27. char *_strdup(const char *str)
  28. {
  29.   if (str == NULL)
  30.     return NULL;
  31.  
  32.   char *strstore = 0;
  33.   strstore = (char*)malloc((strlen(str) + 1) * sizeof(char));//выделили память для char
  34.  
  35.   if (strstore == NULL)
  36.     return NULL;
  37.  
  38.   strcpy(strstore, str);// копирование строки str в strstore
  39.   return strstore;
  40. }
  41.  
  42.  
  43. int main()
  44. {
  45.   char str[13] = "Hello world!";
  46.   char *str_store = _strdup(str);
  47.   printf("%s\n",(str_store));
  48.   free(str_store);//очистили память
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement