以下是引用azzbcc在2012-12-3 13:11:56的发言:
应该没了吧,这个借鉴一下,话说偷这种懒可不太好#include
#include
#include
int StringLenth(char *chars)
{
return _msize(chars) / sizeof(char);
}
int main()
{
int lenth;
char *a = (char*)malloc(7);
lenth = StringLenth(a);
printf("%d\n", lenth);
strcpy(a, "abc");
lenth = StringLenth(a);
printf("%d\n", lenth);
return 0;
}
第2个lenth其实不应该正确 用malloc分配给它7之后 它就是7了 不管里面是有效字符 还是\0
应该没了吧,这个借鉴一下,话说偷这种懒可不太好#include
#include
#include
int StringLenth(char *chars)
{
return _msize(chars) / sizeof(char);
}
int main()
{
int lenth;
char *a = (char*)malloc(7);
lenth = StringLenth(a);
printf("%d\n", lenth);
strcpy(a, "abc");
lenth = StringLenth(a);
printf("%d\n", lenth);
return 0;
}
DO IT YOURSELF !