It's supposed to be the number of elements of a given size to write. The prototype is something like
size_t fwrite(const void *buffer, size_t size, size_t count, FILE *stream)
so if you have an array of 32-bit floats youre planning to write to a file you'd use something like this
/* create an array on the free store */
size_t arraySize = 100;
float *myArray = (float*) malloc(arraySize*sizeof(float));
/*
...Assuming malloc() was ok and so on...
...do some interesting stuff with our array
*/
/* lets assume the file is already opened as outFile */
elementsWritten = fwrite(myArray, sizeof(float), arraySize, outFile);
Assuming all was OK, elementsWritten should equal arraySize. Anything less was caused by an IO write failure of some description, in which case elementsWritten was (as the name implies) the number of elements successfully written before the IO error occured.
Thats about it, really...