El lenguaje es C++.
No utilizo C++ habitualmente pero sé que existe la librería libbitcoin con la que creo que han desarrollado el Dark Wallet. De todas formas, si solo quieres generar una dirección en la que recibir pagos, los más sencillo es que llames directamente al ejecutable bitcoin-cli de Bitcoin Core.
Lo acabo de hacer en la línea de comandos, pero en tu caso simplemente tendrías que llamar al proceso desde tu programa C++. En Linux:
~/Downloads/bitcoin-0.9.2.1-linux/bin/64$ ./bitcoin-cli getnewaddress
19UNckxE5Cdvbz6EJQrMTAuk8sRfRHPG33
¡Muy sencillo!
EDIT: Estaba pensando que igual quieres el código para un programa cliente, y en ese caso, tener ejecutando bitcoin-qt quizás no sea lo más apropiado. En ese caso libbitcoin pueda valer, pero sobre C++ no te puedo decir mucho más...
En concreto lo que estoy haciendo es un juego que utiliza las direcciones de bitcoin para crear aleatoriedad a los enemigos.
Mi idea inicial es que el usuario antes de empezar el juego entrara una direccion de bitcoin y el sistema validara que es correcta, o el sistema directamente crea una nueva (no es para contener bitcoins, simplemente para jugar).
De todas formas lo que voy ha hacer es que tendré unas 50 creadas y simplemente el juego escogerá una al azar.
Muchas gracias por vuestro interés.
Saludos