牛客网笔试C++测试题1

以下程序段的输出结果为(C)
char c[] = “\t\v\0will\n”;
printf(“%d”, strlen(c));

A 14
B 3
C 9
D 编译错误

    char c[] = "\t\v\\0will\n";  //数组的长度是10,表示10个字符元素:  '\t'  '\v'  '\\'  '0'  'w'  'i'  'l'  'l'  '\n'  '\0'printf("%d\n", strlen(c)); //输出是 9,单位是个,表示字符串含有9个字符(字符串的长度),不包括最后一个字符后面的'\0' 
    printf("%d\n", sizeof(c)); //输出是10,单位是字节,表示该数组占用字节数,包括最后一个'\0'int array[] = {1,2,3,4,5,6,7,8,9,10};
    //printf("%d\n", strlen(array)); // 编译无法通过,strlen()只能用来计算字符串的长度,该数组保存的不是字符元素 
    printf("%d\n", sizeof(array)); //输出是4032位和64位机器中,int都是4字节,4 * 10 = 40

牛客网笔试C++测试题1_第1张图片

你可能感兴趣的:(c/c++)