Вы можете использовать ошибку, чтобы получить подсказку о том, что идет не так:
#include <stdio.h>
#include <stdlib.h>
#include <errno.h> /* new */
int main (void)
{
if((cfPtr = fopen("test.dat", "rb+")) == NULL) {
printf("File could not be opened.\n");
printf("Errno = %d\n, errno) ; /* new */
}
return 0;
}