>void main()
int main()
>if((StringPtr = new char[26]) == NULL)
This may or may not correctly handle errors depending on how old your compiler is.
>*(StringPtr+i) = String;
You know, you can do StringPtr[i] = String[i];
too. It's a lot easier to read and write.
>cout << "StringPtr = " << StringPtr << endl;
You forgot the last character, the '\0'.
>delete [] String;
And why are you trying to delete an array?
>For "delete [] String;" part, I tried to use the for loop to see if it works.
Why don't you take that entire line away and see if it works? You're not supposed to release memory unless you explicitly allocate it.