c语言指针题目及答案
请问一道C语言指针题目
A p1是指针. p1-p2是一个常数. 所以 p1+(p1-p2)一样是指针. 赋值为20, 这个是错的.正确方式为*(p1+(p1-p2))=20 B p1+2-p2 这里的p1-p2是常数, 再加上2还是常数. 对齐取值, 为非法操作.
c语言选择题(指针)
答案是A,首先定义p是一个指向int类型的指针,不过这个指针没有初始化,也就是没有指向。然后定义了一个int类型的变量i,这里千万不要认为i也是个指针,如果i跟p一样,要在前面也加个*号。然后分析答案: A,这里对p指向的变量进行赋值,这里是相当于初始化了。所以正确。B,不正确\/不合理,因为p的...
C语言指针练习(包括答案和详解)
C语言_071_指针的定义和使用_上
一道C语言指针类问题(有答案,解释一下过程)
答案是39.
C语言指针题
1. p是指向a地址(内存单元)的一个指针。*p指的是p所指向内存单元里的值,即为a的值,故*p+a 就相当于a+a,结果就为20 2. scanf是格式化输入函数(C语言中的库函数),它需要变量的地址,而p就是指向a的地址的,故此答案是:scanf("%d",p);...
c语言指针题
答案是A,A:int a=2; int *p=a; 地址也是整型,虽然语法上没有问题,但是这个用法是不正确的,int *p初始化时,应该赋的是一个地址的值,而不是变量的值 B: int a[2][3];int *p=a; \/\/ 这种用法虽然正确,但不常见,将二维数组的地址赋给一维指针 C D赋给p的都是地址,是正确的,...
C语言指针,求题目详解
您好,很高兴回答您的问题。您的这个程序,主函数中的第一句话表示p1 和str都是数组名,指向数组中的第一个元素。p2是指针变量,指向的是字符型数据。第二句话表示p2这个指针变量指向的是包含有abc等三个元素的字符型数组。strcpy(str+1,strcat(p1,p2))表示现将p2所指向的内容添加到p1这个数组的...
c语言指针变量方面的题,求大神解答?
就是x的数据,意义上*p就是x,第二题就很好理解了,&*p 就是&x了 反过来说第一题,&p是p的地址,*&p就是 系统给p分配到的地址指向的数据,就是p本身的存储,也就是赋值的&x,就是x的地址,答案里面没有&x,但是有p 实际运行时候取到的值是一样的,只是考个逻辑 ...
c语言指针问题,求解答
首先 函数指针的定义 A、D定义为:A 定义指向函数的指针pf,所指向的函数参数为空,无返回值 D 定义指向函数的指针pf,函数参数为int,char型(不符题意,题目为int,char*),无返回值 B、D的定义为:定义函数pf,函数参数为空,返回类型为void *(void 型指针)单从函数指针的定义可排除BCD。其次...
求一道C语言指针选择题
p1=a : 表示指针p1指向数组的头部,假设地址为0x0001。p2=&a[5] : 表示指针指向数组的第6个元素的地址(C语言的数组元素下标从0开始),假设地址为0x0006。p1-p2,即两个地址相减,0x0006 - 0x0001 = 0x0005, 即十进制的5。
库尔勒市孚来回答:[选项] A. *p=10; B. i=p; C. i=*p; D. i=2*p+1; 你的回答: B (*) 参考答案:A (求详解)
狂品19436706102问: C语言指针习题解答?
库尔勒市孚来回答: int a,b[5]; // 声明 a=0; b[0]=3; // 初始化 func(&a,b); // 相当于b[0]=a+6; 即b[0]=0+6; printf("%d\n", b[0]); // func为传址调用,b[0]为6 答案为6,原因见上面的注释.二楼正解. 如果是考题,就不用多想了. 如果是自己写的,第一,b[5]未完全初始化,应该避免.第二,func中应当对指针参数的合法性进行判断,避免非法调用.
狂品19436706102问: C语言有关指针的题目 - ?
库尔勒市孚来回答: 答案选择 BA是数组首地址,所以数组的第3个元素是 (首地址 + 2) 即 ( p=A+2 ) A的第3个元素也可以这样表示 A[2], 要使p指向它,就用取地址符,即 & ,所有也可以这样 p=&A[2];所以答案是 B .
狂品19436706102问: 帮忙做一个C语言指针题目?
库尔勒市孚来回答: C,是正确答案 ps是二级指针,在使用指针变量时,*每出现一次,则指针级别减1 对于a答案,ps+1是二级指针,而不是对元素的引用 b答案是一级指针 d答案是1级指针 这是一个简单的理解,因为*指的是取指针所指向内存地址中的内容
狂品19436706102问: 几道C语言指针题目?
库尔勒市孚来回答: 最后一题题目有点问题,int *p,a=4;和p=a;照它这样说的话,那么指针p就没有指向了,应改为int *p,a=4;和p=&a;
狂品19436706102问: C语言指针函数例题 - ?
库尔勒市孚来回答: 在我的系统中运行你 的程序和你想的一抄样,是8不是7.string 1,string 2:it's a boy boy offset 8 "boy"in"it's a boy" 所谓指针就是地址,只是指针会区别它是什么指针,对应的数据占多大内存.如subst,str都是袭char*类型的,他们是字符指针,所以他们指向的类型是字符.*str和str[0]的含2113义是一样的,意思是取得首字符.在c语言中字符串5261就是用字符指针来表示的,对应的是“%s”,而加上了*,是取这个字符指针地址的内4102容,也就是一个字符,用“%c”表示.所以你打印的是字符串,就1653应该用%s.
狂品19436706102问: 请教C语言指针题目 - ?
库尔勒市孚来回答: A:行指针p只能指向有3列元素的二维数组;C:s=q是非法的,s是二维,q是一维;D:很显然,char指针不能指向int型.
狂品19436706102问: 本人是C语言菜鸟,大神求打救,简述一下什么是指针,什么是的地址,以下题目的意思是什么? 1、 变量i的值为3,i的地址为2000,若欲使指针变量p指向... - ?
库尔勒市孚来回答:[选项] A. )&i=3; B. )*p=3; C. )*p=2000; D. )p=&i; 为什么选D吖?
狂品19436706102问: 关于指针的c语言题,求解释和答案 - ?
库尔勒市孚来回答: #include int main(){ int a[][2]={10,20,30,40,50,60},(*p)[2]; // 定义一个指向数组的指针p,该数组有2个int元素 p=a; // 将a赋值给p,即p...
狂品19436706102问: c语言,关于指针的题目(我是截取了部分题目) - ?
库尔勒市孚来回答: void main() { int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int (*p)[4]=a; cout} 答案是9 p是数组指针 步长味4,p是二级指针, *(p+1)表示的是第二个数组 {9,11,13,15}的地址,也就是首元素 a[1][0]的地址,+0 表示就是首元素,然后*表示地址对应的值,9