函数返回值为指针,主函数中调用时确出了点问题...
这个函数的功能只是产生一个1024位的二进制大整数,用数组保存,返回一个指向这个数组的指针,函数没问题,但调用后却产生了一些随机值,表示很不理解...附代码:
程序代码:#include <stdio.h>
/*产生一个1024位的大整数*/
int* PBINT()
{
int Br[1024],I,*P=NULL;
srand(time(NULL));//产生真随机数
for(I=0;I<1024;I++)
{
Br[I]=rand()%2;//产生随机的0,1数,依次存进数组
printf("%d ",Br[I]);//测试是否正确产生了大整数
}
if(Br[0]==0)
Br[0]=1;//如果首位为0,则没有意义
printf("\n");
P=Br;
return P;//返回一个指针,指向存放大整数的数组的首地址
}
main()
{
int br[1024],i,*p=NULL;
p=PBINT();//函数调用
for(i=0;i<1024;i++)
{
br[i]=*p;//将产生的大整数依次输出到数组br中
printf("%d ",br[i]);
p++;
}
}效果图:









