構造体の中に変数と関数ポインタを設定し、C++っぽくしてみようと試みましたが
ある関数(変数)は外部から参照できないように、ある関数(変数)はグローバルに・・・みたいに
できませんか?

そんなに構造体を二つにすれば解決すると思うのですが、できれば一つの構造体で
構成したいのです。
仮に、構造体を二つ、公開用と非公開用をつくり、それを一つの構造体の中に格納する・・・
みたいなものってできますか?