初学 C++ 写了一半的代码已经迷失了。谁能帮我看一下

#include
#include
//マクロ定義
#define NUM_WORD (16)
#define LIMIT_WORD (256)

//プロトタイプ宣言
int Input(char* pword);
void Reverse(char* pWord , int nLengthWord);
void Output(char* pWord, int nLengthWord);

void main(void) {
char aWordIn[LIMIT_WORD];//入力文字列
int nLenghWord;//入力文字数

//開始メッセージ表示
printf("秘密の暗号\n");

//入力
nLenghWord = Input(&aWordIn[0]);

//反転
Reverse(&aWordIn[0], nLenghWord);

//表示
Output(&aWordIn[0], nLenghWord);

int ndata = 5;
power2(&ndata);
printf("%d\n", ndata);//=>25

}

void power2(int* ndata) {
*ndata = *ndata * *ndata;//5*5=25
}

int Input(char* pword);
void Reverse(char* pWord , int nLengthWord);
void Output(char* pWord, int nLengthWord);
有定义没实现

void power2(int* ndata)
调用前没申明

也不知道你要做什么。鬼子的文字看不懂。