What does (char* )str do in the below code?
/**
 * Main file 
 */
#include <assert.h>
#include <mylib.h>
int main()
{
  const char str[] = "this is my first lab\n";
  int ret=1; 
  ret = my_print((char *)str, sizeof(str));
  assert(!ret);
  return 0;
}
This code is written by my instructor. my_print is a function which receives a pointer to a string and the size of that string. I am confused on why do we have to use (char *)str to pass the string to the my_print function. What does it actually do?
 
     
     
     
    