C与C++在形參的一点小差别

先看一下以下的代码:

int fun(a,b)
int a;
int b;
{
	return 10;
}

void main(int argc, char ** argv)
{
	fun(10);
	return;
}

大家猜猜看它在VS小能通过编译吗?

哈哈。不啰嗦了,直接说结果,假设这段代码在一个.c文件中是能够通过编译的。在一个.cpp文件中是不能通过编译的。

非常奇怪吧,想这应该是c与c++的一点小差别吧,近期在看nc源代码,看到这样的形參声明方式,感觉好奇妙。还有就是它的船參个数比較奇妙。仅仅要实參小于形參的个数就好了。

我把nc源代码贴出来吧。有须要的去下载:

http://download.csdn.net/detail/liujiayu2/8981509

时间: 2024-10-18 04:26:17

C与C++在形參的一点小差别的相关文章

以前的笔记迁移__形參,实參,递归

形參变量仅仅有在被调用时,才分配内存单元.调用结束时.即刻释放所分配的内存单元. 实參和形參占用不同的内存单元,即使同名互不影响. 在被定义的函数中,必须指定形參的类型 实參与形參的类型应同样或赋值兼容. 良好的程序设计习惯:为了使程序具有良好的可读性并降低出错.凡不要求返回值的函数都应定义为空类型.即使函数类型为整型.也不使用系统的缺省处理. 一个函数在它的函数体内调用它自身称为递归调用. 这样的函数称为递归函数. C语言同意函数的递归调用.在递归调用中,主调函数又是被调函数. 间接递归 为了

[深入学习C#]输入输出安全性——可变类型形參列表的变化安全性

可变类型形參列表(variant-type-parameter-lists) 可变类型形參列表(variant-type-parameter-lists )仅仅能在接口和托付类型上出现.它与普通的type-parameter-lists的差异在于,它的每一个类型形參前面能够加上变化性批注:in和out. 假设前面的变化性批注为out,则该类型形參成为协变类型形參:假设变化批注为in.则该类型形參成为逆变类型形參:假设不存在变化批注,则称该类型形參为固定类型形參. 比如: interface C<

做预解释题的一点小方法和小技巧

在JavaScript中的函数理解中预解释是一个比较难懂的话题.原理虽然简单,寥寥数言,但其内涵却有深意,精髓难懂.如何在轻松活跃的头脑中将它学会,现在针对我在学习中的一点小窍门给大家分享一下,希望能给大家一些帮助: 万事需遵循"原理"--"预解释"无节操和"this"指向:(可先看例题解析然后结合原理进行学习) (感谢蕾蕾老师给归纳的预解释无节操原理:) 如果函数传参数则先于以下执行,就相当于在函数私有作用域下var了一个变量:根据作用域原理,

新闻发布的一点小总结

经过一段时间的学习,完成了新闻发布的基础功能,进行一点小总结,方便日后回顾.下面是我的一点小总结,不足之处请勿见笑... 我们想要完成一个新闻发布,首先要使其能够成功发布,并且让它能够实现添加.删除.修改.查询.上传.下载等功能.我们还调用AJAX功能查看输出为XML.JSON格式的新闻内容.为完成以上功能,我们首先要进行jdk.tomcat.eclipse的安装和配置.1.各软件的安装和配置1.1.jdk的安装和配置: 1.1.1.下载jdk:下载地址:http://www.oracle.co

【搬运工】一点小收集

1.几种基础算法. 2.数学之美. 3.贝叶斯方法. 转自互联网,链接背后都是故事,水深,都是鱼. 敬意且谨以自勉,长途漫漫,任重道远. 以上. [搬运工]一点小收集,布布扣,bubuko.com

Lichee (六) 配置内核时的一点小优化

我们在分析<Lichee(二) 在sun4i_crane平台下的编译 >的时候,居然没有一个步骤是在配置内核 make ARCH=arm menuconfig 仔细的读过的代码的会发现,在build_kernel有这么一段话 if [ ! -e .config ]; then echo -e "\n\t\tUsing default config... ...!\n" cp arch/arm/configs/sun4i_crane_defconfig .config fi

给Javascript初学者的一点小建议

本文来自e良师益友网 一般初学JavaScript的时候最头痛的就是浏览器兼容问题.在Firefox下面好好的代码放到IE就不能显示了,又或者是在IE能正常显示的代码在firefox又报错了. 如果你正初学JavaScript并有着一样的处境的话建议你:初学JavaScript的时候无视DOM和BOM的兼容性,将更多的时间花在 了解语言本身(ECMAScript).只在特定浏览器编写代码(Chrome/Firefox/Safari),实际工作中使用成熟的 JavaScript框架(jQuery等

C++ 中有关const引用的一点小知识

在读<C++ Primer>时,发现之前对const的概念不是很清晰,只知道如何去使用,于是翻开const引用部分又阅读了一遍,发现有两点自己要注意的地方 1.const限定的对象不可以初始化非const引用 ex. 1 const int src = 512; 2 const int &ok_dest = src; //ok: 引用和初始化对象都是const 3 int &err_dest = src; //error : 引用为非const 原因很简单, src 是不可以被

一点小心得

项目中会遇到这样的逻辑处理:根据不同类型调用不同的方法,通常会用到if else等语句,感觉不太好: 1,应该面向接口编程 2,尽量避免使用if语句 实例:原来代码,接口Iservice的实现类有 ServiceA ,ServiceB,ServiceC public static void main(String[] args) { String type = "C"; Iservice service = null; if (type.equals("A")) {