想写数据到硬盘,再读出来用。下面是调试写和读的代码,问题见后面。         char str[256];
for (int i = 0; i < 256; i++)   //初始写入的数组
{
str[i] = i;
} FILE *pFile = fopen("20070501.dat", "ab");   //先写入
fwrite(str, 1, 256, pFile);
fclose(pFile); pFile = fopen("20070501.dat", "rb");  //读
char strRead[256];
fread(strRead, 1, 256, pFile);
fclose(pFile); pFile =fopen("2007.dat","ab");      //再写,验证读的是否正确
fwrite(strRead, 1, 256, pFile);
fclose(pFile);
现象:
1。在调试的时候,128以上的数在watch窗口里面显示的是负数,补码。 
   如129显示-127
   定义unsigned char就显示128以上的正数了。
2。在调试的时候,读入的数组strRead[],128-255数显示0-127。
   而且点感叹号运行不生成.dat文件
3。关掉vc,运行debug下的.exe,两次写入的文件都是0-255的数,如我本意。
  生成两个.dat文件问题:
1。char还有符号类型么?
2。调试和运行的时候,观察变量和实际运行不一样? 那调试的时候观察数据的意义何在?  
3。调试的时候为什么不生成.dat文件?