Assuming your variable "string" is an actual std::string data type, then it has two member functions ".begin()" and ".end()". Feed these into "random_shuffle" and check out what "string" contains.
Is there any reason you don't want your code posted? I've posted some absolute garbage to this website when I was first starting out so don't be embarrassed about your code. Anyway, after your read in the data from your file create a new std::string and set it equal to your variable called "string". That will let you use the ".begin()" and ".end()" iterators:
1 2 3 4
///Your code is here
std::string NewString = string[a]; //Create an std::string from your variable
std::random_shuffle(NewString.begin(), NewString.end());
///More of your code goes here
EDIT: If it wasn't clear before, the variable "NewString" now contains a jumbled version of the original.
You put my code right below the "fscanf()" function in the code segment you posted above. You'll need to change a few things, rename your "string" variable (just capitalize the 's') and change your #include <string.h> at the top of your file into #include <string> and add #include <algorithm> at the top as well.
NOTE: I had also originally forgot to designate which char array to assign to the "NewString" variable, this has been fixed.
You probably should because it's a terrible name for a variable, but you don't need to. You do have to change the name of the char array you are currently calling "string" though.