Question about different ways to declare objects and their effects on RAM usuage

String literals occupy both progmem and RAM - they are copied to RAM when the sketch starts. Struct definitions don't consume RAM. Take a look at the F macro - you can keep your strings in progmem only. Consider posting your code for more specific advice.