您的位置:首页 > 其它

数组指针辨析

2016-01-12 19:46 274 查看
学c学的好不好,做完这些题你就知道了。

1.

char str[4] = {'0', '1', '2', '3'};

printf("str: %s\n", str);

char str1[5] = {'0', '1', '2', '3'};

printf("str1: %s\n", str1);

char str2[4] = "calc";

printf("str2: %s\n", str2);

char str3[5] = "calc";

printf("str3: %s\n", str3);

2.

char str[4] = {'0', '1', '2', '3'};

printf("str: %d\n", sizeof(str));

char *p_str = str;

printf("p_str: %d\n", sizeof(p_str));

char str1[5] = {'0', '1', '2', '3'};

printf("str1: %d\n", sizeof(str1));

char *p_str1 = str1;

printf("p_str1: %d\n", sizeof(p_str1));

char str2[4] = "calc";

printf("str2: %d\n", sizeof(str2));

char *p_str2 = str2;

printf("p_str2: %d\n", sizeof(p_str2));

char str3[5] = "calc";

printf("str3: %d\n", sizeof(str3));

char *p_str3 = str3;

printf("p_str3: %d\n", sizeof(p_str3));

char str4 = '1001';

printf("str4: %d\n", sizeof(str4));

printf("str4: %d\n", sizeof('1001'));

3.

int num[5] = {0, 1, 2, 3, 4};

printf("num: %d\n", sizeof(num));

int *n = num;

printf("n: %d\n", sizeof(n));

int num1[] = {0, 1, 2, 3, 4};

printf("num1: %d\n", sizeof(num1));

4.

printf("%c, %d\n", '\0', '\0');

printf("%c, %d\n", 0, 0);

printf("%c, %d\n", '0', '0');

5.

int a[10] = {2, 4, 3, 4, 5, 6, 7, 8, 9, 10};

printf("%d\n", &a[9]-&a[3]);

printf("%d\n", *(&a[3]+2));

6.

#include <stdio.h>

void go(int a[10])

{

printf("子函数a: %d", sizeof(a));

}

int main()

{

int a[10];

printf("主函数a: %d", sizeof(a));

go(a);

getchar();

return 0;

}

答案见下篇:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: