Vector3 array causing nullreferenceException

I have a series of Mazes that I want to move around at certain intervals, but I also want them to be able to return to where they first started. I am trying to use a for loop to set the position of the starting position for each of the mazes, but when I do, it just sets a “NullReferenceException” error. Here is my code so far:

public GameObject[] Mazes;
private Vector3[] MazeStart;

void Start {

for (int i = 0; i < Mazes.Length; i++) {
           MazeStart _= Mazes*.transform.position;*_

}

}
I have a similar code for my character that is as follows:
private Vector3 spawn;

void Start(){
spawn = transform.position;
}
This code works in the same way I want it to work for the Mazes, but for some reason, it just won’t work for the Mazes. The Mazes Game Objects have been set as well.

You have to initialize the array before you can populate items in the array, like so:

void Start() {
	// initialize the array
	MazeStart = new Vector3[Mazes.Length];

	// populate the array
	for (int i = 0;i < MazeStart.Length; i++) {
		MazeStart _= Mazes*.transform.position*_

* }*
}
However, I recommend you use Linq instead:

using System.Linq;

void Start() {
* MazeStart = Mazes.Select(maze => maze.transform.position).ToArray();*
}