Write a function that converts a character array to a signed floating point number. Function prototype must be as follows: int asciiToFloat( char *str, unsigned char* eflag) Follow similar conventions as in problem 10, but the decimal point, . is now a legal character. YOU MAY NOT USE THE LIBRARY ATOI AND ATOF FUNCTIONS, but you may use any string library function.The function must only have two parameters. str is the character string to be converted.a) If the string has any leading non-numeric characters other than + or -, your function should print an error message, set eflag to 1, and return 0.b) Any non-digit characters other than 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 and . should also result in an appropriate error message, setting the eflag to 1 and returning 0.c) Otherwise, your function should convert numeric ascii character string to the appropriate signed integer value. The eflag should be zero for a successful conversion. Return the signed integer value.d) Examples of invalid strings:A101239z45e) Examples of valid strings:+123-99120For an entry such as -0, return 0.f) Include comments to explaining how your function works.