C语言错题集3:二级指针函数指针数组指针
Posted 歌咏^0^
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言错题集3:二级指针函数指针数组指针相关的知识,希望对你有一定的参考价值。
以下程序的输出结果是_____
int main()
{
char *p = "abcdefgh", *r;
long *q;
q= (long*)p;
q++;
r =(char*)q;
printf("%s\\n", r);
return 0;
}
一下程序:
int main()
{
char *p = "abcdef";
printf("%c ", *(p+2);
p += 2;
*p = 'm';
printf("%c\\n", *p);
return 0;
}
执行结果是:_____
以下程序运行后,输出结果是 ___
int main()
{
char *s = "abcde";
s = s +2;
printf("%ld'n", s);]
}
A. cde B.字符 c的ASCLL码值 C.字符c的地址 D.出错
对于基本类型相同的两个指针之间,不能进行的运算是____
A、不确定值 B、a的地址 C、512 D、511
有以下程序____
void fun(char *c, int d)
{
*c = *c +1 ;
d = d+1;
printf("%c, %c,", *c, d);
)
int main()
{
char a = 'A', b = 'a';
fun(&b, a);
printf("%c, %c\\n", a, b);
}
程序运行结束后的输出结果是
A、B, a,B,a B、a,B,a,B C、A,b,A,b D、b,B,A,b
下面程序的运行结果是:_____
void swap(int *a, int *b)
{
int *t;
t = a;
a = b;
b = t;
}
int main()
{
int x = 3, y = 5, *p = &x, *q = &y;
swap(p, q);
printf("%d%d\\n", *p, *q);
return 0;
}
A,33 B,35 C,53 D,55
有以下程序____
main()
{
char *s[] = {"one", "two", "three"}, *p;
p = s[1];
printf("%c, %s\\n", *(p + 1), s[0]);
}
执行后输出结果为:
A, n, two B, t, one C, w, one D, o,two
有以下程序
int main()
{
int a[][3] = {{1,2,3}, {4,5,0}}, (*pa)[3], i;
pa = a;
for(i = 0; i < 3; i++);
if(i < 2)
pa[1][i] = pa[1][i] - 1;
else pa[1][i] = 1;
printf("%d'n", a[0][1] + a[1][1] + a[1][2];
}
执行后输出结果为:____
A,7 B, 6 C, 8 D,不确定值
以下程序:
#include <stdio.h>
#include <string.h>
int main()
{
char p[20] = {'a', 'b', 'c', 'd'};
char q[] = "abc", r[] = "abcde";
strcpy(p + strlen(q), r);
strcat(p, q);
printf("%ld %ld\\n", sizeof(p), strlen(p));
return 0;
}
输出结果为:______
A 20 9 B 9 9
C 20 11 D 11 11
以上是关于C语言错题集3:二级指针函数指针数组指针的主要内容,如果未能解决你的问题,请参考以下文章
C语言02 - 指针运算数组与指针指针变量名指针与函数参数指针函数函数指针二级指针
C 语言二级指针内存模型 ( 指针数组 | 二维数组 | 自定义二级指针 | 将 一二 模型数据拷贝到 三 模型中 并 排序 )