20.9 Số phức
ISO & NBSP; C99 giới thiệu hỗ trợ cho các số phức tạp trong C. Điều này được thực hiện với vòng loại loại mới, complex
. Đó là một từ khóa nếu và chỉ khi phức tạp.h đã được bao gồm. Có ba loại phức tạp, tương ứng với ba loại thực: float complex
, double complex
và long double complex
.
Tương tự như vậy, trên các máy có hỗ trợ cho _FloatN
hoặc _FloatNx
được bật, các loại phức tạp ____10 và
#include #undef I1 cũng có sẵn nếu phức tạp.h đã được đưa vào; Xem toán học.
Để xây dựng các số phức, bạn cần một cách để chỉ ra phần tưởng tượng của một số. Không có ký hiệu tiêu chuẩn cho một hằng số nổi tưởng tượng. Thay vào đó, Complex.h định nghĩa hai macro có thể được sử dụng để tạo các số phức.
Macro: Const float Complex _complex_i ¶const float complex _Complex_I ¶Macro này là một đại diện của số phức tạp 0+1i. Nhân một giá trị dấu phẩy động thực với
#include #undef I2 cho một số phức có giá trị hoàn toàn là tưởng tượng. Bạn có thể sử dụng điều này để xây dựng các hằng số phức tạp:
3.0 + 4.0i = 3.0 + 4.0 * _Complex_I
Lưu ý rằng
#include #undef I3 có giá trị
#include #undef I4, nhưng loại giá trị đó là
complex
.#include #undef I2 là một chút của một miệng. Complex.h cũng xác định một tên ngắn hơn cho cùng một hằng số.Macro: Const Float Complex I ¶const float complex I ¶
Macro này có chính xác giá trị giống như
#include #undef I2. Hầu hết thời gian nó là thích hợp hơn. Tuy nhiên, nó gây ra vấn đề nếu bạn muốn sử dụng định danh
#include #undef I8 cho một thứ khác. Bạn có thể viết một cách an toàn
#include #undef I
Nếu bạn cần
#include #undef I8 cho mục đích của riêng bạn. [Trong trường hợp đó, chúng tôi khuyên bạn cũng nên xác định một số tên ngắn khác cho
#include #undef I2, chẳng hạn như
float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
1.] 2
Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.
Tôi biết những con số tưởng tượng và phức tạp là gì trong thế giới toán học nhưng còn trong C ++, các loại dữ liệu phức tạp và tưởng tượng là gì. Ngoài ra, tôi thấy các loại dữ liệu như _imaginary và _complex. Sự khác biệt là gì và các loại dữ liệu phức tạp và tưởng tượng là gì?
Đã hỏi ngày 15 tháng 6 năm 2011 lúc 19:36Jun 15, 2011 at 19:36
float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
2 và float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
3 là các từ khóa trong tiêu chuẩn ngôn ngữ C99 được sử dụng để xác định các loại biến nổi tưởng tượng và phức tạp; Chúng không phải là một phần của ngôn ngữ C ++. Chúng không phải là loại dữ liệu trong chính chúng - chúng sửa đổi các loại float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
4, float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
5 và float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
6. Ví dụ:float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
Các giá trị
float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
2 chủ yếu tương đương với các giá trị thực thông thường, ngoại trừ khi bạn thêm một thực với giá trị tưởng tượng, bạn sẽ nhận được giá trị float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
3.Tệp tiêu đề
float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
9 định nghĩa các macro _Imaginary
Revision as of 11:59, 3 December 2010 by PyBot [Talk | contribs]
Category
Reserved Words
Syntax
_Imaginary
Description
Reserved for future use.
Warning: C++Builder does not implement _Imaginary but does treat it as a keyword when the -An compiler flag is set. Do not use _Imaginary as an identifier.
0 là float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
2 và complex
là float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
3, cũng như #include #undef I8 như
#include #undef I2 hoặc
_Imaginary
Revision as of 11:59, 3 December 2010 by PyBot [Talk | contribs]
Category
Reserved Words
Syntax
_Imaginary
Description
Reserved for future use.
Warning: C++Builder does not implement _Imaginary but does treat it as a keyword when the -An compiler flag is set. Do not use _Imaginary as an identifier.
6 [đơn vị tưởng tượng]. Điều này là để các chương trình Legacy C có thể sử dụng complex
và _Imaginary
Revision as of 11:59, 3 December 2010 by PyBot [Talk | contribs]
Category
Reserved Words
Syntax
_Imaginary
Description
Reserved for future use.
Warning: C++Builder does not implement _Imaginary but does treat it as a keyword when the -An compiler flag is set. Do not use _Imaginary as an identifier.
0 làm định danh; Các chương trình mới nên sử dụng complex
và _Imaginary
Revision as of 11:59, 3 December 2010 by PyBot [Talk | contribs]
Category
Reserved Words
Syntax
_Imaginary
Description
Reserved for future use.
Warning: C++Builder does not implement _Imaginary but does treat it as a keyword when the -An compiler flag is set. Do not use _Imaginary as an identifier.
0 thay vì float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
3 và float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
2. Lưu ý rằng các định danh bắt đầu bằng một dấu gạch dưới, theo sau là một chữ cái viết hoa được dành riêng bằng cách thực hiện, vì vậy mã di sản không bao giờ nên sử dụng float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
3 hoặc float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
2.C ++, mặt khác, không sử dụng điều này và thay vào đó có các loại được định chế complex
5, complex
6 và complex
7 để xử lý các số phức tạp. Các lớp này hoạt động rất giống với các loại C99 nhưng không thể giữa các trường hợp.
Đã trả lời ngày 15 tháng 6 năm 2011 lúc 19:52Jun 15, 2011 at 19:52
Adam Rosenfieldadam RosenfieldAdam Rosenfield
380K96 Huy hiệu vàng508 Huy hiệu bạc584 Huy hiệu Đồng96 gold badges508 silver badges584 bronze badges
1
Đây thực sự là các kiểu dữ liệu C, không phải các kiểu dữ liệu C ++.
Khi tạo các tiêu chuẩn C mới, ủy ban tránh sử dụng các từ khóa mới. Vì vậy, họ sử dụng các định danh dành riêng, bắt đầu bằng một dấu gạch dưới. Sau đó, tiêu chuẩn cũng có thể cung cấp một tệp tiêu đề xác định một macro đẹp hơn [phức tạp, thay vì _complex].complex, instead of _Complex].
Vì C ++ mới hơn C, nó đã bao gồm kiểu dữ liệu phức tạp vì nó được chuẩn hóa lần đầu tiên và không cần phải dùng đến phiên bản được nhấn mạnh.complex datatype since it was first standardized, and doesn't need to resort to the underscored version.
Đã trả lời ngày 15 tháng 6 năm 2011 lúc 19:49Jun 15, 2011 at 19:49
ninjaljninjaljninjalj
41.6K9 Huy hiệu vàng103 Huy hiệu bạc145 Huy hiệu Đồng9 gold badges103 silver badges145 bronze badges
không phải cái này?
Và từ một nguồn khác:
_Imaginary
Revision as of 11:59, 3 December 2010 by PyBot [Talk | contribs]
Category
Reserved Words
Syntax
_Imaginary
Description
Reserved for future use.
Warning: C++Builder does not implement _Imaginary but does treat it as a keyword when the -An compiler flag is set. Do not use _Imaginary as an identifier.
Đã trả lời ngày 15 tháng 6 năm 2011 lúc 19:40Jun 15, 2011 at 19:40
LacrymologylacrymologyLacrymology
2.1972 Huy hiệu vàng18 Huy hiệu bạc28 Huy hiệu đồng2 gold badges18 silver badges28 bronze badges
Có một tiêu đề complex
8 xác định một loại dữ liệu số phức tạp thuận tiện cho bạn, tất cả các phần của thư viện tiêu chuẩn. Đây là tài liệu.
Đã trả lời ngày 15 tháng 6 năm 2011 lúc 19:41Jun 15, 2011 at 19:41
Kerrek Sbkerrek SBKerrek SB
453K89 Huy hiệu vàng861 Huy hiệu bạc1064 Huy hiệu Đồng89 gold badges861 silver badges1064 bronze badges
Trong C ++, có một tiêu đề gọi là complex
8 xác định lớp mẫu float complex
0, có thể được khởi tạo cho
float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
4, float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
5 và float _Imaginary x; // imaginary 32-bit number
double _Complex y; // complex 64-bit number
long double _Complex z; // complex 80-bit number
6. Điều này cho phép bạn xác định các số phức tạp và thực hiện các hoạt động số học thông thường và một số chức năng.Không có lớp
_Imaginary
Revision as of 11:59, 3 December 2010 by PyBot [Talk | contribs]
Category
Reserved Words
Syntax
_Imaginary
Description
Reserved for future use.
Warning: C++Builder does not implement _Imaginary but does treat it as a keyword when the -An compiler flag is set. Do not use _Imaginary as an identifier.
0 hoặc loại trong C ++ tiêu chuẩn, chỉ là các số phức tạp với một phần thực là 0,0. Bất kỳ lớp _Imaginary
Revision as of 11:59, 3 December 2010 by PyBot [Talk | contribs]
Category
Reserved Words
Syntax
_Imaginary
Description
Reserved for future use.
Warning: C++Builder does not implement _Imaginary but does treat it as a keyword when the -An compiler flag is set. Do not use _Imaginary as an identifier.
0 nào cũng sẽ là một loại tiện ích mở rộng của nhà cung cấp. [Cá nhân, tôi không thấy rằng một lớp _Imaginary
Revision as of 11:59, 3 December 2010 by PyBot [Talk | contribs]
Category
Reserved Words
Syntax
_Imaginary
Description
Reserved for future use.
Warning: C++Builder does not implement _Imaginary but does treat it as a keyword when the -An compiler flag is set. Do not use _Imaginary as an identifier.
0 sẽ được sử dụng nhiều. Nó thậm chí còn không bị đóng khi nhân.]Bất kỳ tên nào bắt đầu bằng một dấu gạch dưới và được theo sau bởi một chữ cái vốn được dành riêng để sử dụng bằng cách thực hiện, và do đó, không có bất cứ điều gì C ++ tiêu chuẩn phải nói về chúng. Bất kỳ loại như vậy sẽ được thực hiện cụ thể và bạn chưa chỉ định triển khai. Hơn nữa, có lẽ đó không phải là thứ bạn nên sử dụng chính mình.
Đã trả lời ngày 15 tháng 6 năm 2011 lúc 19:49Jun 15, 2011 at 19:49
David Thornleydavid ThornleyDavid Thornley
55,8K8 Huy hiệu vàng90 Huy hiệu bạc155 Huy hiệu Đồng8 gold badges90 silver badges155 bronze badges