当前位置: 代码迷 >> C语言 >> 大家帮忙测试
  详细解决方案

大家帮忙测试

热度:372   发布时间:2005-09-09 21:15:00.0
大家帮忙测试

这是一个复制文件的简单程序,大家帮忙测试一下这种复制方法对于复制后的文件,是否会造成该文件末多个字节,谢谢。我只是想确定一下,这种问题是否与不同的计算机有关。 #include <stdio.h>

#define BUF_SIZE 1024

typedef unsigned char byte;

static long filelen(FILE *fp);

int main(int argc,char *argv[]) { if(argc < 3) { printf("Usage: %s <source> <destination>\n",argv[0]); return 0; } else { FILE *fin = NULL,*fout = NULL; byte buffer[BUF_SIZE] = {0}; int amount = 0, reminder = 0,i; long fl = 0; fin = fopen(argv[1],"rb"); if(!fin) { printf("Cannot open file %s\n",argv[1]); return 0; } fl = filelen(fin); fout = fopen(argv[2],"wb"); amount = fl / BUF_SIZE; reminder = fl % BUF_SIZE; for(i = 0; i < amount; i++) { fread(buffer,sizeof(byte) * BUF_SIZE,1,fin); fwrite(buffer,sizeof(byte) * BUF_SIZE,1,fout); } fread(buffer,sizeof(byte) * reminder,1,fin); fwrite(buffer,sizeof(byte) * reminder,1,fout); fclose(fin); fclose(fout); printf("File copy complete!\n"); return 0; } }

static long filelen(FILE *fp) { long rec; fseek(fp,0L,SEEK_END); rec = ftell(fp); fseek(fp,0L,SEEK_SET); return rec; }

[此贴子已经被作者于2005-9-9 21:17:10编辑过]


----------------解决方案--------------------------------------------------------

想问你一个问题哦 #include <stdio.h> #include <bios.h> #include <ctype.h>

#define RIGHT 0x01 #define LEFT 0x02

#define CTRL 0x04 #define ALT 0x08 这个键盘扫描码 这些数字0x01是怎么来的哦


----------------解决方案--------------------------------------------------------
这个嘛,我是通过TC3.0帮助手册中关于bioskey函数介绍的实例测试出来的,我把实例执行一遍,然后按几个键测试一下就行了。
----------------解决方案--------------------------------------------------------
我用拉次 那怎么我的结果和你的不同哦
我的right 10进制是19200
16进制 是0x4b00
为什么你的是0x01  还有我能加你qq吗  我的qq是5995063 说你是天使的羽毛我就会通过拉
谢谢拉
----------------解决方案--------------------------------------------------------
  相关解决方案