sizeof 字符数组

比较

#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
  char xman[] = "xman";
  char* xtest = "xmansuper";
  printf("%s\t%d\t%d\n", xman, sizeof(xman), strlen(xman));
  printf("%s\t%s\t%d\n", xman, xtest, strncmp(xtest, xman, sizeof(xman)));
  return 0;
}

输出

xman    5    4
xman    xmansuper    115

通过sizeof返回的比较strlen返回的多1,将\0的空间也算进去了。

在将strncmp比较的是,如果用sizeof(array)则为精确匹配,如果需要匹配字串,可以sizeof(array)-1

如果

posted @ 2014-07-01 11:20  westfly  阅读(488)  评论(1编辑  收藏  举报