change ubuntu username

C++
echo $USER
# To manage every aspect of the user database, you use the usermod tool.
# To change username (it is probably best to do this without being logged in):

sudo usermod -l newUsername oldUsername
# This however, doesn't rename the home folder.
# To change home-folder, use

sudo usermod -d /home/newHomeDir -m newUsername# -l changes login name
# -d changes home directory
# -m copies over contents from old home directory
usermod -l <newname> -d /home/<newname> -m <oldname>

# NOTE: will not work if you are currently logged on as user
# - workaround by temporarily enabling root account and running above command there
# [sudo passwd root] 
# - after root account has been used to change username lock it using
# [sudo passwd -l root]
Source

Also in C++: