Right, I'm not that keen on Cocoa or Objective C but love the iPhone tech so I'm just about picking it up as I go along, but somethings stuck me. I'm using some pretty huge arrays so instead of the NSArray pish I can't quite grasp the purpose of, I'm using old school C multi dimensional arrays.. for example.. type arrayname[size1][size2]; Only thing is, I have that at the top of a function. so it should be creating a temporary array for that function right? but the next time I call that function and create the array, it's already populated with the data from the first time the function ran. It's as if it's creating a static object! Any ideas why? It's got me baffled! Thanks in advance!