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

Đề tài: Ý nghĩa của hàm getchar()?

  1. #1
    Ngày gia nhập
    03 2008
    Nơi ở
    Nhà tù
    Bài viết
    37

    Mặc định Ý nghĩa của hàm getchar()?

    C Code:
    1. #include <stdio.h>
    2. #include <conio.h>
    3.  
    4. #define  DAU_CHAM     '.'
    5.  
    6. void main(void)
    7.  
    8.  
    9. {
    10.  char c;
    11.  int idem;
    12.   for(idem = 0; (c = getchar()) != DAU_CHAM; )
    13.   idem++;
    14.  printf("So ki tu: %d.\n", idem);
    15.  getch();
    }Cái dòng c = getchar() có ý ngĩa gì vậy ạ!

    C Code:
    1. #include <stdio.h>
    2. #define  DAU_CHAM     '.'
    3. void main(void)
    4. {
    5.  char c;
    6.  for(; (c = getchar()) != DAU_CHAM; )
    7.   putchar(c);
    8. }
    Cái dòng for(; (c = getchar()) != DAU_CHAM; ) lạ quá.Các anh giaỉa tích dùm
    for(idem = 0; (c = getchar()) != DAU_CHAM; )

  2. #2
    Ngày gia nhập
    01 2008
    Nơi ở
    Rất đông người
    Bài viết
    589

    Chả có gì lạ cả. Trong C/C++, phép gán cũng là một biểu thức và biểu thức ấy có giá trị bằng giá trị của vế phải trước khi thi hành phép gán (và cũng chính là giá trị vế trái sau khi thi hành phép gán).

    Như thế phép gán c=getchar() cũng là một biểu thức và có giá trị bằng giá trị của getchar() trước khi thi hành phép gán, tức là giá trị của c sau khi thi hành phép gán.

    Giả sử lời gọi getchar() cho ký tự 'A', thì sau đó chương trình sẽ:
    - Thi hành phép gán c=getchar(), kết quả là c sẽ có giá trị 'A'.
    - Đánh giá biểu thức c=getchar(), biểu thức này sẽ có giá trị là 'A'.
    - Đánh giá biểu thức (c = getchar()) != DAU_CHAM, nói cách khác 'A' != '.' và kết quả sẽ là 1 (tức là "đúng").

    Còn giả sử lời gọi getchar() cho ký tự '.' thì sau 3 bước tương tự như trên cuối cùng kết quả sẽ là 0 (tức là "sai").
    Đã được chỉnh sửa lần cuối bởi Ada : 12-05-2008 lúc 11:37 PM.

  3. #3
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,007

    getchar(); là macro ko phải hàm được định nghĩa như sau :

    #define getchar() getc(stdin)
    ^_,^

    Facebook : https://www.facebook.com/langmaninternet

    Bùi Tấn Quang

  4. #4
    Ngày gia nhập
    04 2008
    Nơi ở
    Bốn bề là nhà
    Bài viết
    697

    Ý nghĩa của vòng lặp ấy là :Nhập 1 dãy các kí tự liên tiếp cho đến khi gặp dấu chấm thì kết thúc,mình nghĩ lên dùng vòng lặp while thì hơn
    C Code:
    1. while (c=getchar() != dau_cham) idem++;

  5. #5
    Ngày gia nhập
    01 2011
    Bài viết
    27

    giải thích luôn cho e cái putchar() với

  6. #6
    Ngày gia nhập
    03 2011
    Bài viết
    10

    Mặc định Ý nghĩa của putchar()

    putchar() là hàm in một ký tự ra màn hình thôi

  7. #7
    Ngày gia nhập
    11 2014
    Nơi ở
    Thanh Hóa, Vietnam
    Bài viết
    0

    thế putchar (c) nghĩa là sao

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

  1. Bài tập C Hỏi về getchar?
    Gửi bởi i1020242 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 5
    Bài viết cuối: 10-05-2013, 03:34 PM
  2. Tác dụng của câu lệnh while(getchar()!='\n'); trong lập trình C?
    Gửi bởi manta trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 5
    Bài viết cuối: 11-12-2011, 11:05 PM
  3. Mã nguồn C Lỗi Không dừng được màn hình dù đã gọi getchar()
    Gửi bởi longtth trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 12-07-2011, 11:33 PM
  4. Cách sử dụng hàm getchar() như thế nào?
    Gửi bởi pinkakun trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 0
    Bài viết cuối: 11-04-2011, 06:36 PM
  5. Lập trình C Lệnh getchar ko được thực hiện?
    Gửi bởi sunshine trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 6
    Bài viết cuối: 13-06-2010, 12:57 AM

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