1. Trang chủ
  2. » Công Nghệ Thông Tin

CHƯƠNG 2:NHỮNG MỞ RỘNG CỦA C+ ppsx

32 261 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 32
Dung lượng 16,87 MB

Nội dung

CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ Giới thiệu những điểm khác biệt chủ yếu giữa C và C++ Các điểm mới của C++ so với C CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 1. CÁC ĐIỂM KHÔNG TƯƠNG THÍCH GIỮA C++ VÀ ANSI C 1.1 Định nghĩa hàm Trong định nghĩa hàm ANSI C cho phép hai kiểu khai báo dòng tiêu đề của hàm, trong khi đó C++ chỉ chấp nhận một cách /* C++ không khai báo kiểu này *//* C++ không khai báo kiểu này */ double ham(a,b)double ham(a,b) int a;int a; double bdouble b ;; /* Cả C và C++ cho phép*//* Cả C và C++ cho phép*/ double ham(int a, double b)double ham(int a, double b) int a;int a; double b;double b; CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 1. CÁC ĐIỂM KHÔNG TƯƠNG THÍCH GIỮA C++ VÀ ANSI C 1.2 Khai báo hàm nguyên mẫu - Tronc C chỉ cần khai báo tên hàm và giá trị trả về, không cần danh sách kiểu của các tham số - C++ khai báo hàm nguyên mẫu Với C++ một lời gọi hàm chỉ được chấp nhận khi trình biên dịch biết được kiểu của các tham số, kiểu của giá trị trả về CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 1. CÁC ĐIỂM KHÔNG TƯƠNG THÍCH GIỮA C++ VÀ ANSI C 1.2 Khai báo hàm nguyên mẫu Chuyển kiểu tự động theo nguyên tắc sau: char -> int ->longint -> float ->double Ví dụ: double ham(int , double) /* khai báo hàm ham*/ …. main() { int n; char c; double x, x1, x2,x3; x1=ham(n,x); /* không có chuyển đổi kiểu*/ x2=ham(c,x); /* có chuyển đổi kiểu từ char->int*/ x3=ham(x,n); /* có chuyển đổi kiểu từ double ->int và từ int thành double */ …. CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 1. CÁC ĐIỂM KHÔNG TƯƠNG THÍCH GIỮA C++ VÀ ANSI C 1.3 Sự tương thích giữa con trỏ void và các con trỏ khác Trong ANSI C, kiểu void tương thích với các kiểu con trỏ khác cả hai chiều Ví dụ: void *g; int *i; Phép gán sau là hợp lệ g=i ; i=g ; Trong C++ chỉ có chuyển đổi kiểu ngầm định từ một kiểu con trỏ tùy ý thành void*, còn ngược lại phải thực hiện chuyển đổi kiểu tường minh. Ví dụ: g=i; i=(int*)g; CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++ Trong tệp tiêu đề isotream.h người ta định nghĩa hai đối tượng cout và cin tương ứng với hai thiết bị chuẩn ra vào được sử dụng cùng với << và >>. Thường thì ta hiểu cout là màn hình còn cin là bàn phím 2.1 Ghi dữ liệu ra thiết bị chuẩn cout Ví dụ 1 : #include <isostream.h> main() { cout << “Hello C++”; } CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++ 2.1 Ghi dữ liệu ra thiết bị chuẩn cout Sử dụng cout và << đưa ra các giá trị khác nhau Ví dụ 2 : #include <iostream.h> void main() { int n=25; cout << “value :“; cout << n; } Ví dụ 3 : #include <iostream.h> void main() { int n=25; cout << “value :“<<n ; } CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++ 2.1 Các khả năng viết ra trên cout Có thể sử dụng toán tử << cùng với cout để đưa ra màn hình giá trị của một biểu thức có các kiểu sau :  Kiểu cơ sở (char, int, float, double)  Xâu ký tự (char *)  Con trỏ (trừ con trỏ char *) Trong trường hợp muốn đưa ra địa chỉ của xâu ký tự phải thực hiện việc chuyển đổi kiểu tường minh (char*)->(void*) CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++ 2.1 Các khả năng viết ra trên cout Ví dụ: #include <iostream.h> void main() { int n=25; long p=250000; unsigned q=63000 ; char c=’a’ ; float x=12.3456789; double y=12.3456789e16; char *st= “Hello C++”; int *ad=&n ; cout <<”Gia tri cua n :” <<n<< “\n”; cout <<”Gia tri cua p :” <<p<<”\n”; cout <<”Gia tri cua c :” <<c<<”\n”; cout <<”Gia tri cua q :” <<q<<”\n”; cout <<”Gia tri cua x :” <<x<<”\n”; cout <<”Gia tri cua y :” <<y<<”\n”; cout <<”Gia tri cua st :” <<st<<”\n”; cout <<”Dia chi cua ad :” <<ad<<”\n”; cout <<”Dia chi cua st :” <<(void*)st<<”\n”; } CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++ 2.2 Đọc dữ liệu từ thiết bị chuẩn cin Ví dụ 1: int n; cin>>n; Ví dụ 2: int n ; float p ; char c ; cin>>c>>n>>p ; Dùng toán từ >> để nhập dữ liệu cho các kiểu char, int, float, double và char* [...]... . CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ Giới thiệu những điểm khác biệt chủ yếu giữa C và C++ Các điểm mới của C++ so với C CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 1. CÁC ĐIỂM KHÔNG TƯƠNG THÍCH GIỮA C++ . nhận khi trình biên dịch biết được kiểu của các tham số, kiểu của giá trị trả về CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 1. CÁC ĐIỂM KHÔNG TƯƠNG THÍCH GIỮA C++ VÀ ANSI C 1.2 Khai báo hàm nguyên mẫu Chuyển. : #include <isostream.h> main() { cout << “Hello C++ ”; } CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++ 2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++ 2.1 Ghi dữ liệu ra thiết bị chuẩn cout Sử dụng cout và <<

Ngày đăng: 13/08/2014, 20:22

TỪ KHÓA LIÊN QUAN

w