例えば結果で「グー」と表示をさせたいときに

char gu[256];
strcpy(gu,"グー");
printf("%s",gu);

とするのと

printf("グー");

するのでは明らかに後者のほうが楽だと思うのですが、教本には前者の書き方をして有りました
これの違いは企業などでプログラムを作る時は前者のようにあらかじめメモリを確保しといたほうがいいということなのでしょうか