Từ 1 tới 2 trên tổng số 2 kết quả

Đề tài: Lỗi trong function parsing (Need help!)

  1. #1
    Ngày gia nhập
    11 2008
    Bài viết
    0

    Question [Solved] Lỗi trong function parsing (Need help!)

    Chào mọi người!
    Mình đang làm một cái project về lập trình 1 cái shell trên Linux. Khi xử lý dòng lệnh người dùng nhập vào, mình xử lý nó thành các nhóm lệnh tách biệt, các nhóm là 1 chương trình (process), bao gồm thông tin về arguments và redirections của process đó.

    Ví dụ khi nhập
    $ cat 0< /etc/passwd | dd of=cat-out | cat > dd-out

    Thì được
    Code:
    This job has the command: cat 0< /etc/passwd | dd of=cat-out | cat > dd-out
    Size is: 3
    =======================
    The 0-th job has program name: cat
    It has redirection number: [1]. And argument number: 0
    List of argument: 
    List of direction: "/etc/passwd" type 0<|
    End!
    =======================
    The 1-th job has program name: dd
    It has redirection number: [1]. And argument number: 1
    List of argument: "of=cat-out" and len: 10 ][ 
    List of direction: "/etc/passwd" type 0<|
    End!
    =======================
    The 2-th job has program name: cat
    It has redirection number: [2]. And argument number: 1
    List of argument: "of=cat-out" and len: 10 ][ 
    List of direction: "/etc/passwd" type 0<|"dd-out" type >|
    End!
    Riêng khi nhập:
    $ dd if=/dev/zero
    Nó ra:
    ....
    =======================
    The 0-th job has program name: dd
    It has redirection number: [0]. And argument number: 1
    List of argument: "if=/dev/zeroý" and len: 14 ][
    List of direction:
    End!
    (Phần màu đỏ) Có thêm 2 ký tự ở sau "if=/dev/zero**" (length = 14).
    Mình ko hiểu tại sao lại ra kết quả như thế này? (đáng ra phải là "if=/dev/zero" và len = 12)

    Bạn nào nói được lỗi hộ mình ko?

    Source code của file này đính kém ở dưới. Dịch bằng Gcc trong Linux
    (Khi chạy, muốn thoát thì gõ: exit)

    Cảm ơn các bạn!
    Attached Files Attached Files
    Đã được chỉnh sửa lần cuối bởi paddy8788 : 16-11-2008 lúc 02:30 AM. Lý do: Solved

  2. #2
    Ngày gia nhập
    11 2008
    Bài viết
    0

    Mình tìm ra lỗi rồi các bạn à. Do mỗi lần copy string mình quên ko thêm mã 0x00 vào cuối nên khi đọc string thì chương trình nhận nhầm điểm kết thúc

Các đề tài tương tự

  1. Parsing Json sử dụng Serialization như thế nào ?
    Gửi bởi jvinhit trong diễn đàn Lập trình Windows Mobile bằng C#
    Trả lời: 1
    Bài viết cuối: 24-07-2014, 10:04 PM
  2. Báo lỗi XML Parsing Error: not well-formed Location: http://localhost/asp/ Line Number 1, Column 2
    Gửi bởi dongtrien trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 0
    Bài viết cuối: 26-06-2012, 02:41 PM
  3. Call to undefined function "nhandoi" in function main()
    Gửi bởi webboyk trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 5
    Bài viết cuối: 19-06-2012, 10:09 PM
  4. Viết function để test một function khác như thế nào?
    Gửi bởi c_is_master trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 2
    Bài viết cuối: 05-05-2012, 02:55 AM
  5. Parsing xml file trong VC++ 6.0
    Gửi bởi hoangtu23 trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 1
    Bài viết cuối: 24-02-2009, 10:51 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn