#include<stdio.h>
int a=9;
void fun1()
{
printf("a=%d\n",a);
}
static 限定全局变量的可用范围在当前源文件内,在局部变量中只初始化一次
static int x=0;
//0x表示十六进制,0表示八进制(077),不带前缀则默认表示十进制。
//const 类型的对象在程序执行期间不能被修改改变。
//extern 可以继承全局变量声明,在其它文件内使用
void main()
{
fun1();
}
//C++ 传数组给一个函数,数组类型自动转换为指针类型,因而传的实际是地址。
void myFun(int *param)
{
}
void myFun(int param[])
{
}
double getAverage(int arr[], int size)
{
int i, sum = 0;
double avg;
for (i = 0; i < size; ++i)
{
sum += arr[i];
}
avg = double(sum) / size;
return avg;
}
#include <iostream>
using namespace std;
// 函数声明
double getAverage(int arr[], int size);
int main ()
{
// 带有 5 个元素的整型数组
int balance[5] = {1000, 2, 3, 17, 50};
double avg;
// 传递一个指向数组的指针作为参数
avg = getAverage( balance, 5 ) ;
// 输出返回值
cout << "平均值是:" << avg << endl;
return 0;
}
//函数指针返回一个一维数组
int *myFun()
{
}
//example
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
// 要生成和返回随机数的函数
int * getRandom( )
{
static int r[10];
//C++ 不支持在函数外返回局部变量的地址,除非定义局部变量为 static 变量。
// 设置种子
srand( (unsigned)time( NULL ) );
for (int i = 0; i < 10; ++i)
{
r[i] = rand();
cout << r[i] << endl;
}
return r;
}
// 要调用上面定义函数的主函数
int main ()
{
// 一个指向整数的指针
int *p;
p = getRandom();
for ( int i = 0; i < 10; i++ )
{
cout << "*(p + " << i << ") : ";
cout << *(p + i) << endl;
}
return 0;
}
C与C++中关键字static,const,extern 问题,C++中数组与指针函数
猜你喜欢
转载自blog.csdn.net/weixin_41865104/article/details/91585042
今日推荐
周排行