作者:lxb
关于今天在论坛里请教sizeof()的问题,有以下收获:
(身边的强人都去参加博创比赛去了,只能到论坛里问了)
1、sizeof()不是函数,是运算符;
2、数组和指针数组的长度是不一样的:
如果是char *m="liudehua";
sizeof(m)==4
如果是char m[120]="liudehua";
sizeof(m)==120
3、既然知道了上面这两点,那么关于字符串赋值就没问题了
char *m="liudehua";
char n[120];
strncpy( n, m, sizeof(m));//错误赋值,得不到想要的,只能将"liud"赋给n;
strncpy( n, m, 10);//赋值正确,可以将"liudehua"赋给n,但这样可能会浪费资源(暂时没有不知道有什么好方法可以解决这个问题)