本文目录一览:
C语言write函数的返回值问题
大多数情况下,write成功后返回的写入字节数都等于你传入的长度。
但是如果你要写的长度超过了的文件的最大可能时,比方说,你的磁盘还剩下128个字节,这时你向磁盘上的某个文件一次性写512个字节,返回值就是128,只有前128个字节成功写入。
再比如,你用write写的不是一个普通文件,而是设备文件/socket等,那也可能返回值小于你指定的值,这就可能是具体设备的限制等,比如写入的数量超过了缓冲大小等。
C语言中,void的用法,什么是返回值
首先比喻下函数是什么吧?
函数简单的说就是一个黑箱子似的制造机器,你给他原料(输入参数)它给你制造出产品(函数返回的结果)。
所以函数的返回值一般就是你想要的结果。当然有些函数没有返回值,比如输出一句话的函数,这函数就没有返回值。c++用void型表示。但是求两个数的最大值函数int
max(int
a,
int
b)的返回值就可以是你求的最大的值。
int
max(int
a,
intb)
{
if(ab)
{
return
a;
}
else
{
return
b;
}
}
其中return返回的值就是函数的返回值。
C语言中的接口是什么?它和抽象类有什么区别?
把stdio.h库比喻成一个黑箱子,printf就是它的其中一个接口。通过接口你可以使用箱子里的某个功能(在这里是输出字符)而不用去关心printf的实现,死钻stdio.h里的乱七八糟的原理。
类(不是说抽象类)是C++的东西,比如车类,由自身属性(颜色,重量什么的)和行为(前进,左转等)所构成,有点拟人的感觉。你只能让车做行为而改变自己属性(前进撞墙了等)而不能直接改变它的属性(自动改变颜色?)还有其他什么继承就不罗嗦了。
抽象类是类的其中一种特殊的类。