In this section write a macro to transfer a block of memory
     In this section, write a macro to transfer a block of memory of size N from a source location to a destination using a MACRO called memorycopy. This MACRO has three parameters: SOURCE, DESTINATION, and SIZE. Then, write a program that transfers N bytes from 10 different sources, whose sizes are N bytes. to 10 different destinations with the same size using the written macro, that is. memorycopy. 
  
  Solution
#include <stdio.h>
 #include <string.h>
 #define memorycopy(ms1, ms2, n) memcpy(ms1, ms2, n); //Macro
 int main()
 {
 char so[10][50], de[10][50];
 int r, c = 0;
 printf(\"\  Enter 10 Source data: \");
 for(r = 0; r < 10; r++)
 {
 fflush(stdin);
 gets(so[r]);
 }
for(r = 0; r < 10; r++)
 {
 printf(\"\ \  Enter number of character to copy: \");
 scanf(\"%d\", &c);
//Macro call
 memorycopy(de[r], so[r], c);
printf(\"\ \ Original message: \");
 fflush(stdout);
 puts(so[r]);
 fflush(stdout);
 printf(\"After memorycopy(): \");
 puts(de[r]);
 }
 }

