关键字-分节9(void和retuan)

void 不能代表一个真实的变量

void 不能代表一个真实的变量。
因为定义变量时必须分配内存空间,定义void 类型变量,编译器到底分配多大的内存呢。 下面代码都企图让void 代表一个真实的变量,因此都是错误的代码: void a; //错误
function(void a); //错误
void 体现了一种抽象,这个世界上的变量都是“有类型”的,譬如一个人不是男人就是女 人(人妖不算)。
void 的出现只是为了一种抽象的需要,如果你正确地理解了面向对象中“抽象基类”的概 念,也很容易理解void 数据类型。正如不能给抽象基类定义一个实例,我们也不能定义一 个void(让我们类比的称void 为“抽象数据类型”)变量。 void 简单吧?到底是“色”还是“空”呢?

return 关键字

return 用来终止一个函数并返回其后面跟着的值。
return (Val);//此括号可以省略。但一般不省略,尤其在返回一个表达式的值时。 return 可以返回些什么东西呢?看下面例子: char * Func(void) {
char str[30]; …
return str; }
str 属于局部变量,位于栈内存中,在Func 结束的时候被释放,所以返回str 将导致错误。 【规则1-38】return 语句不可返回指向“栈内存”的“指针”,因为该内存在函数体结束时 被自动销毁。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值