Will the program outputs "IndiaBIX.com"?
#include
#include
int main()
{
char str1[] = "IndiaBIX.com";
char str2[20];
strncpy(str2, str1, 8);
printf("%s", str2);
return 0;
}
Answer: B
No. It will print something like 'IndiaBIX(some garbage values here)' .
Because after copying the first 8 characters of source string into target string strncpy() doesn't terminate the target string with a '\0'. So it may print some garbage values along with IndiaBIX.