C++如何实现将一数组筛选赋值到另一数组呢?数字型的

赋值和输出,总有一些出错
for(i=0;i<10;i++)

if(prime(a[i]))
{b[i]=a[i];
count++;}
for(i=0;i<count;i++)
cout<<b[i]<<" ";

但是如果改为整体赋值,就没有什么问题,prime()是我自己设置用来筛选的子函数,b[i]长度未知
想实现筛选赋值,然后反向输出