运行时此处有异常提示 LVALUE REQUIRED

运行时此处有错误提示 LVALUE REQUIRED
#include <stdio.h>
 #include <string.h>
 #include <conio.h>
 void main()
 {
 char d[20]="gg mm";
 char *s="   make love";
 char f[43]="                      ";
 clrscr();
 f=strncat(d,s,15);   运行时此处有错误提示  LVALUE REQUIRED

请问如何解决?
另外当f定义为  char *f="                      ";  无错误提示
这两者有什么区别?


------解决方案--------------------
strcpy(f,strncat(d,s,15));
------解决方案--------------------
数组名是右值指针,不能赋值