定义一个函数,就可以调用了啊
河北网站建设公司成都创新互联公司,河北网站设计制作,有大型网站制作公司丰富经验。已为河北近千家提供企业网站建设服务。企业网站搭建\外贸网站制作要多少钱,请找那个售后服务好的河北做网站的公司定做!
比如定义一个函数,实现参数a+参数b,返回值
int
fu_add(int
a,int
b)
{
return
a+b;
}
这是一个最简单的函数,函数名称为fu_add,函数有两个参数,int
a,int
b
函数将两个值相加,并返回相加的值
调用的时候
int
main()
{
int
nret;
nret
=
fu_add(5,6);
printf("调用函数后的结果为:%d",nret);
}
#includestdio.h
int jiecheng(int n)
{
int t = 1, i;
for (i = 1; i = n; i++)
{
t = t*i;
}
return t;
}
int main(void)
{
int i, sum = 0;
int n = 6;
for (i = 1; i = n; i++)
sum = sum + jiecheng(i);
printf("1!+2!+3!+4!+5!+6!=%d\n", sum);
return 0;
}
如何调用C语言写的库,如a.lib等,有对应的库头文件a.h。假设a.h中定义了函数:
int
WhyCoding(int
a,
float
b);
做法是,
/*
cpp_a.h
*/
extern
"C"
{
#include
"a.h"
}
或
/*
cpp_a.h
*/
extern
"C"
{
int
WhyCoding(int
a,
float
b);
/*
重定义所有的C函数
*/
}
从上面可以看出,extern
"C"
是用在C和C++之间的桥梁。之所以需要这个桥梁是因为C编译器编译函数时不带
函数的类型信息,只包含函数符号名字,如C编译器把函数int
a(float
x)编译成类似_a这样的符号,C连接器只要
找到了调用函数的符号,就可以连接成功,它假设参数类型信息是正确的,这是C编译连接器的缺点。而C++
编译器为了实现函数重载,编译时会带上函数的类型信息,如他把上面的a函数可能编译成_a_float这样的
符号为了实现重载,注意它还是没有带返回值得信息,这也是为什么C++不支持采用函数返回值来区别函数
重载的原因之一,当然,函数的使用者对函数返回值的处理方式(如忽略)也是重要原因。
基于以上,C调用C++,首先需要用封装函数把对C++的类等的调用封装成C函数以便C调用,于是extern
"C"
的
作用是:让编译器知道这件事,然后以C语言的方式编译和连接封装函数.(通常是把封装函数用C++编译器按C++
方式编译,用了extern
"C"
后,编译器便依C的方式编译封装接口,当然接口函数里面的C++语法还是按C++方式
编译;对于C语言部分--调用者,还是按C语言编译;分别对C++接口部分和C部分编译后,再连接就可以实现C
调用C++了).
相反,C++调用C函数,extern
"C"
的作用是:让C++连接器找调用函数的符号时采用C的方式,即使用_a而不是
_a_float来找调用函数。
#include"stdio.h"int swap(int *a,int *b){int temp;temp=*a;*a=*b;*b=temp;}
main(){int x,y;printf("请输入x与y的值,用空格隔开\n");scanf("%d%d",x,y);printf("x=%d,y=%d\n",x,y);swap(x,y);printf("交换后\nx=%d,y=%d\n",x,y);}
扩展资料:
C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。
参考资料:百度百科-C语言
#include stdio.h
void fun(double a[3][3])
{
double *ptr = (double *)a;
printf("input 9 data:\n");
// 输入数据到二维数组 a[3][3]
for (int i = 0; i 9; ++i)
scanf("%lf", ptr + i);
double max = *ptr;
// 查找 a[3][3]的最大值,并输出
for (int i = 1; i 9; ++i )
if (*(ptr+i) max)
max = *(ptr+i);
printf("max elem value = %g\n", max);
}
int main()
{
double x[3][3];
fun(x);
return 0;
}
C语言是普适性最强的一种计算机程序编辑语言,它不仅可以发挥出高级编程语言的功用,还具有汇编语言的优点,计算和的方法为:
1、新建一个求1到100自然数之和项目。
2、添加一个cpp文件。
3、包含需要用到的头文件。
4、输入main函数。
5、定义两个变量,分别是:a和sum。
6、使用while语句计算1到100之间所有自然数之和。
7、运行程序,打印出结果。
注意事项:
C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不作检查等。从应用的角度,C语言比其他高级语言较难掌握。也就是说,对用C语言的人,要求对程序设计更熟练一些。