Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 3 của 3
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Thắc mắc về hàm ghi một số nguyên lên tệp theo kiểu nhị phân - putw

    Chương trình sau thực hiện ghi một vài giá trị nguyên lên tệp theo kiểu nhị phân, sau đó cho in các giá trị nguyên đó lên màn hình từ tệp:

    Mã:
    #include <stdio.h>#include <conio.h>#include <process.h>void main(){    FILE *f;    int i;    /* ghi cac so nguyen */    f=fopen("integer","wb");    for (i=1000;i<=1005;i++)        putw(i,f);    fclose(f);    /* doc cac so nguyen tu tep */    system("cls");    f=fopen("integer","rb");    while ((i=getw(f))!=EOF)        printf("
     %d ",i);    fclose(f);}
    Nhưng kết quả sau khi ghi ra tệp không hiện ra các số nguyên mà nó hiện ra mấy cái kí tự gì đó. Mà sách thì ghi là hàm này ghi một số nguyên lên tệp.

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    hàm đó ghi số nguyên vào file dưới dạng nhị phân
    1000 -> 00 00 03 E8, biểu thị dưới dạng big-endian là E8 03 00 00
    1001 -> 00 00 03 E9, biểu thị dưới dạng big-endian là E9 03 00 00
    ...
    mở file đấy bằng một chương trình hex editor (như ultraedit) chẳng hạn là bạn sẽ thấy.

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Bạn muốn thấy số thì phải ghi bằng text mode, chứ binary mode là ghi theo mã nhị phân muh ^^

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •