求助一道C语言问题?

对函数调用语句fseek(fp,10,2)的含义?

int fseek(FILE *stream, long offset, int fromwhere);

其中fromwhere起始点

起始点名 代表数字 含义

SEEK_SET       0                  文件开头    

SEEK_CUR      1                  文件当前位置    

SEEK_END      2                  文件末尾    

offset 偏移量,表示把与fp有关的文件位置指针放在与起始点相距多少的位置上

当offset为正时,表示从“起始点”开始往文件尾方向移动

为负时,表示从“起始点”开始往文件头方向移动

所以,fseek(fp,10,2)意思‍是将与fp相关的指针移到文件末尾再向后10比特位处,但是,此时偏移量已经超出文件尾,文件指针是指向文件尾的。最终的结果就是与fp相关的指针移到文件末尾‍

追问

也就是超过了会从头开始移动吗

追答

不是,是超过了就不会移动了,停留在文件尾

温馨提示:内容为网友见解,仅供参考
无其他回答

一道简单的C语言题
B、D就是++i,i++区别了。选项C为 ptr->i =*(ptr->i) \/\/错误 选项D ++ptr->i = ++(ptr->i)

C语言的一道题不会做了,求大神帮一下
第一题: a=4,b=8, 所以 (b==a) 为假,假就是 0,c= (b==a); c 得 0。语句中 a,b 数值 未发生过变化,保持初始值 a=4,b=8。所以输出 a,b,c 印出: 4,8,0 第二题:输入58,a=58;a>50 的条件成立,输出a值,印58 a>40 的条件成立,输出a值,印58 a>...

一道C语言问题求解答
假设我们要铺长度为10,那么怎么铺呢?有两种铺法。长度为9,再加一块长度为1的。长度为8,再加一块长度为2的。由此我们可以得知铺n的情况等于铺n-1的情况+铺n-2的情况。公式 :f(n)=f(n-1)+f(n-2)。

一道c语言题目 求大神指点下算法?
根据题意,随机生成红绿蓝球任意个数,并任意顺序排列。这里采用随机数实现。统计按红绿蓝顺序排列最少交换次数,我的思路是:第一步:循环将最后一个红色球与最靠前的其它两色球(并且满足位置在红球之前)交换。第二步:循环将最后一个绿球与最靠前的蓝球(必须在绿球之前)交换。include <stdio.h> ...

两个关于C语言的问题。
1、在x=3的状态下进入do循环,第一次运行printf语句,首先使 x -= 2 ,x的内容减掉2,输出x的当前值,所以输出了1。接着进行循环条件判断,先进行 --运算,使x的内容变为0,!0的计算结果为真,循环继续进行。第二次运行printf首先 x-=2 即 x = 0-2,使x的内容变为-2,并被输出。当x...

C语言的一道题~求解~最好有原因***
正确答案是B。A和D都很明显,c 不在赋值符号最左边,所以不可能正确把值赋给a,b。对于c,是一个逻辑与表达式,一旦运算符&&前面值为假(值为0)则不会继续运算后面部分,这里c为0 ,所以后面 b = c不会执行。综上,答案为B。

问一道——x的c语言题目
C语言的语法:1, 如果是--x-1,则先计算--x,x的值就变为0,--x-1之后,y的值就成为-1;2, 如果是- -x-1,则先计算x-1,值为0,但x的值不变,仍为1,后面就连续执行两个-,所以最后的值仍为0(因为- -0 = 0),所以最后的y值为0;不明白这个问题,就好好的看一下C语言...

一道C语言
答案C char str[][20]={"Hello","Beijing"} 这表示str是个二维数组,由两个一维数组构成,每个一维数组是20个字节构成。p=str 这表示p是指针,指向二维数组str的首地址 p+20 这表示由p指向的地址向后偏移20个字节,刚好指向了第二个一维数组“Beijing”了 strlen()它是字符数组长函数,对“...

问一道C语言题目
do{}while()这种是,先进入一次循环体,然后才判断是否满足条件,注意,这种方式是无论条件是否满足,都会循环一次,另外,它的退出条件是不满足了,才退出。对于本题,首先第一次进入循环,输出:4,此时x=4-2=2 然后,判断2>0,满足,进入循环,输出:2,此时x=2-2=0 然后,判断0>=0,满足...

问一道C语言编程的问题,看下图
按你的提问,每天都吃一半多两个,第6天剩一个。程序按图片中的程序照猫画虎即可。计算结果,第一天摘了156个桃子,而不是100个。include <stdio.h>int main(){int day,x1,x2;day=5;x2=1;while(day>0){x1=(x2+2)*2;x2=x1;day--;}printf("total=%d\\n",x1);return 0;} 用...

相似回答