You cannot use GPL code in proprietary software without making your proprietary code become "infected" by the GPL license. Your code would then become GPL code as well. It doesn't matter if you've modified the GPL code or not. If your code uses it, it too becomes GPL code.
Thus, if you're building any kind of software where it's important that your code remain proprietary, then do not use GPL code.
However, this isn't to say that corporate entities cannot make a profit using GPL code. If you focus on building solutions that help you provide better services to customers or that fill a need that requires your continual involvement in support of the software, then you can charge service fees. For instance, the Android operating system is open source, yet Google, Amazon, Verizon, AT&T, and other entities make money from it everyday because they bill for services rendered, not for selling the software.
Also, this helps hardware companies like Motorola and Samsung sell their devices, as they use Android as well.
Also, building on the "service" case and what Martin Beckett mentions in the comments, if the code you're using is something that will be used internally only and not distributed to the outside world, you can use GPL code without having to release it to the world.
It's always your choice whether or not to release the product, but if you do release the product, you must release both binaries and code as per the terms of the GPL.