GCC is just a compiler. To be more specific, it's a collection of compilers. Namely, it can take C, C++, Objective-C, Fortran, Java, and Ada code, and convert it to machine code.
GCC does not include a text editor or similar; however, GNU does provide a variety of tools to programmers. This includes Emacs, which is basically a extremely complied text editor.
All of the C/C++ compilers that I know of, are just console programs. Programs like Dev-C++, Visual Studio, Code::Blocks, ect... just provides a way to interface with the compiler. Most of the time, I find IDEs to just complicate things; however, they can be great from some of the advanced features, like debugging.
To actually compile a program, all you really have to do, is type something like this into the command prompt (assuming the compiler is in your root)
gcc <SOURCE FILE.c>IDEs will basically just build a list of the source files, and feed them to the compiler, along with a variety of switches and options.
There are also Linkers. Most modern compilers have linkers built in, which greatly simply the compilation progress; however, they still have two very distinct jobs. Once the compiler converts the source code to machine code, it's the linkers job to kinda "paste", or "link" all that code together. This is important, since you can't always compile a entire program from the ground up. IE, when you write a program, you don't have to compile the standard C/C++ libraries, or the OS specific code.
You can read more about compilers here
http://en.wikipedia.org/wiki/Compiler