#include "stdafx.h"
#include<iostream>
#include<string>
using namespace std;
#include<stdlib.h>

void insert(int* arr,int length,int i,int num){
int* p,*q;
p=&arr[length-2];
q=&arr[i-1];
for(;p>=q;p--){
*(p+1)=*p;
}
*q=num;
}

int main(int argc, char* argv[])
{

int a[10]={0};
a[0]=2;
a[1]=3;
a[2]=4;
insert(a,sizeof(a)/sizeof(int),3,1);

for(int i=0;i<10;i++)
{
printf("%d \t",a[i]);
}

return 0;
}

上面的代码表示想数组的第三个元素插入1
输出结果:

2       3       1       4       0       0       0       0       0       0