There are graphical text editors, and console text editors. There is not one best text editor just like there is no one best GNU/Linux distro. It's all about personal preference, here is a list of different ones available. Try out a few and see which ones you like.
horses for courses as f33dm3bits is alluding to ? geany is an all round editor where you can use plugins and also run code to an extent create template pages etc.
What @captain-sensible said about what are you going to be using your text editors for? You can try leafpad or gedit if you want a simple graphical editor, if you want something that can do more for like coding have a look at vscode or atom. Or you can try out a console editor such as nano or vim, but knowing you are new to Linux I think you will probably want to start with a graphical editor.
#include <cstdio>
int main()
{
printf("hello, my name is Charlie ");
printf("When i\'m done i\'m going to put serious C programmer on my curriculum vitae ");
printf( " \n ");
return 0;
}
with some text editors on the face of it some them they are disappointing because you note they don't do spell checking. Do not be discouraged when you then you realize you can just run a spell checker on whole file say using aspell . You might need to add dictioneries
lets say its a html file called index.html
basic use would be : aspell -c index.html
you can add to take into account markup types and ignore them