I’ve always been a vi guy for quick short edits because it’s pretty much always available, more extensive sessions emacs/xemacs, ctags/etags and grep. I’ve found it’s easy to carry around emacs init files for code formatting.
At work, I’ve used SlickEdit and Eclipse in the past. They work well for browsing large code bases, interface could be tweaked so my fingers didn’t need to learn new key sequences, but my biggest complaint is setting them up. If you are starting from zero it’s not bad, but if you are walking into say the BSD or Linux kernel tree that already has Makefiles, it’s a bit of effort to get it set up. Toss in the background retagging of the source, you get lags in the interface. Building and debugging worked fine once set up.
Long winded way of saying that I’m just as effective using emacs and a terminal window for running grep commands. I’ve found tools like clang-format are good for enforcing coding standards (don’t use Google style unless you like ugly code) and you can tweak easily enough for your own style. Then make emacs init fit the same thing and easy code format.