求教一个C语言选择题
#include
#include
#include
static jmp_buf buf;
int main()
{
volatile int b;
//对于volatile类型的变量,系统每次用到他的时候都是直接从对应的内存当中提取,
//而不会利用cache当中的原有数值,以适应它的未知何时会发生的变化,
//系统对这种变量的处理不会做优化——显然也是因为它的数值随时都可能变化的情况。
b =3;
if(setjmp(buf)!=0)
{
printf("%d ", b);
exit(0);
}
b=5;
longjmp(buf , 1);
return 0;
}
/*1.setjmp(j)设置“jump”点,用正确的程序上下文填充jmp_buf对象j。
这个上下文包括程序存放位置、栈和框架指针,其它重要的寄存器和内存数据。
当初始化完jump的上下文,setjmp()返回0值。
2. 以后调用longjmp(j,r)的效果就是一个非局部的goto或“长跳转”到由j描述的
上下文处(也就是到那原来设置j的setjmp()处)。
当作为长跳转的目标而被调用时,setjmp()返回r或1(如果r设为0的话)。
(记住,setjmp()不能在这种情况时返回0。)
通过有两类返回值,setjmp()让你知道它正在被怎么使用。
当设置j时,setjmp()如你期望地执行;但当作为长跳转的目标时,
setjmp()就从外面“唤醒”它的上下文。你可以用longjmp()来终止异常,
用setjmp()标记相应的异常处理程序。*/
这个题目跟volatile关键字没有关系~volatile主要用在多线程里面,我是学c++的,不知道c里面是不是也是这样的
a<b<c
先执行a<b,即1<2,为真,再执行真<c,真为1,所以1<2所以也为真,执行循环体,ab互换,c减1=1
这时a<b,即2<1为假,假为0,c为1,所以0<1为真,所以还是执行循环体,ab互换,c减1=0
这时a<b,即1<2,为真,c为0,即1<0为假,所以不执行循环体,执行输入语句。这时a=1,b=2,c=0
A的值是30,数组里面第三个元素,但下标是2(从0开始)
B的值是30,先移动括号里的指针,指针p指向第一个元素,(p+2)指向第三个元素
C是先用*运算符求指针a指向的元素值(即是10),之后再加10便是正确答案20
D的值是10,*运算符的优先级大于右++运算符
本题考察数组指针和运算符优先级,再不明白的话需要去看书补下基础
a[2]=30
*(p+2)=30
*a=10,*a+10=20
*p++=10
答案是:C
C里面数组的下标从0开始,所以
A)a[2]=30
B)*(p+2)=a[2]=30
C)*a+10=10+10=20
D)*p++ 输就是a[0],即10,然后指针p+1
a[2]=30. *(p+2)=30 *a+10=10+10=20 *p++=10.所以选第三个。
D
C
20道C语言选择题,请教高手
12.在计算机上可以直接运行的程序是( )A.机器语言程序 B.高级语言程序 C.汇编语言程序
请教一道C语言的选择题:下列常数中不能作为C的常量的是
A OxA5 16进制整数常量 B 2.5e-2 浮点型常量 C 3e2 浮点型常量 D 0582 如果是8进制整数常量,那么数字必须在0~7之间 故D是不能作为C的常量
请教一个C语言的选择题,麻烦解释一下,谢谢!!若有下面的定义语句:static...
这个并不是表示,*(str+2)表示的是str为首地址,偏移2个单元的那个地址所指向的内容,这个当然是可以赋值的,也就说把‘c’赋成‘1’
C语言选择题,由于做错了,请教一下大家
A 第一个void表示无返回值,第二个void表示无形参 A 形参只有在函数被调用的时候才会分配空间,形参和实参是独立的存储单元。在函数调用时,形参的值如果发生改变,并不会改变主调函数的实参的值。
请教C语言高手,很多题目不会做。。
4,选d stringlen计算的是“\\0”前的字符长度,sizeof计算的是整个数组长度 5,选c printf("%s\\n",strp[3]+2);表示从整个数组中strp[3](即第四个元素)的第2个子元素开始连续输出以后所有strp[3】的子元素,若改为printf("%s\\n",strp[3]+5);则输出空格,因为“ddddd”一共5个元素 10...
C语言选择题 这种题应该怎么判断 希望大家教教我?
0],经过ps加1后指向s[1],*ps即取出值'r',没问题 C. ps[1],由于ps指向s[0],因此ps[1]就是s[1],存放'r',没问题 D. ps+1,由于ps是指针类型,即char *类型,其加1后也是char *类型,这个是指针类型,存放的是一个字符单元的地址,因此它肯定不是字符类型的数据'r'...
c语言程序设计能力教程答案
一、单项选择题(第23页)1-4.CBBC 5-8.DACA 二、填空题(第24页)1.判断条件 2.面向过程编程 3.结构化 4.程序 5.面向对象的程序设计语言 7.有穷性 8.直到型循环 9.算法 10.可读性 11.模块化 12.对问题的分析和模块的划分 三、应用题(第24页)2.源程序:```c main() { int i,j,...
小学信息技术骨干教师有考C语言编程吗?
这是几年前的考试题,是有c语言编程的 教师招考试题(专业课:信息技术)一、选择题24个题(24)1、 mp3不仅可以听歌还是一个(可移动硬盘)2、粘贴快捷键是(ctrl+v)3、在打开多个窗口情况下,活动窗口和其他窗口的区别是(标题栏为蓝色)4、控件上有(……)能出现对话框。5、Word中的剪贴版...
请教一个c语言题目,a为什么不对,还有浮点型特点是什么,d为什么+1就...
首先A选项,a已经被定义为int整形变量,所以不可能是个字符;B,浮点型是小数 D,a已经被定义成整形,所以a=‘A’+1.6,实际上是a=‘A’+1(在这里a是一个变量而不是ascll值)
请教一个c语言题目
是整除取余,只能进行整型运算,而12.8不是整数,A错。C正确,选C 0x12是十六进制数,转换为对应的十进制数是18