Difference between strncpy and memcpy?
How can i access s[7] in s ? I didn't observe any difference between strncpy and memcpy . If I want to print the output s , along with s[7] (like qwertyA ), what are the changes I have to made in the following code: #include <stdio.h> #include <stdlib.h> int main() { char s[10] = "qwerty", str[10], str1[10]; s[7] = 'A'; printf("%s\n",s); strncpy(str,s,8); printf("%s\n",str); memcpy(str1,s,8); printf("%s\n",str1); return 0; } /* O/P qwerty qwerty qwerty */ Others have pointed out your null-termination problems. You need to understand null-termination before you understand the difference between