Tôi muốn có đầu ra chương trình của mình "cm " (cm bình phương).Siêu văn bản trong đầu ra giao diện điều khiển C++
Làm cách nào để tạo một số 2 bên trên?
Tôi muốn có đầu ra chương trình của mình "cm " (cm bình phương).Siêu văn bản trong đầu ra giao diện điều khiển C++
Làm cách nào để tạo một số 2 bên trên?
Như Zan đã nói, nó phụ thuộc vào ký tự mã hóa đầu ra tiêu chuẩn của bạn hỗ trợ. Nếu nó hỗ trợ Unicode, bạn có thể sử dụng mã hóa cho ² (U+00B2). Nếu nó hỗ trợ cùng một mã hóa Unicode cho các tệp nguồn và đầu ra tiêu chuẩn, bạn chỉ có thể nhúng nó vào tệp. Ví dụ, GNU tôi/hệ thống Linux sử dụng UTF-8 cho cả hai, vì vậy đây hoạt động tốt:
#include <iostream>
int main()
{
std::cout << "cm²" << std::endl;
}
Không hoạt động chỉ với Unicode. Trên ISO-8859-1, ² là 'char (0xB2)'. Kể từ khi hệ thống Windows của tôi sử dụng cho các tập tin nguồn và đầu ra giao diện điều khiển, tôi cũng có thể nhúng nó trực tiếp trong các tập tin nguồn của tôi. – MSalters
Đây không phải là điều mà C++ có thể tự thực hiện.
Bạn sẽ cần phải sử dụng một tính năng cụ thể của hệ thống bảng điều khiển của mình.
Tôi không biết bất kỳ bảng điều khiển hoặc thiết bị đầu cuối nào triển khai siêu kịch bản. Tôi có thể sai mặc dù.
Tùy thuộc vào các ký tự có sẵn và mã hóa được sử dụng. Với [UTF-8 ở khắp mọi nơi] (http://utf8everywhere.org/) có thể. –
Có, tôi đồng ý với Zan.
Cơ bản C++ không có bất kỳ chức năng sẵn có nào để in các bản ghi hoặc bảng con. Bạn cần sử dụng bất kỳ thư viện giao diện người dùng bổ sung nào.
Về mặt kỹ thuật, C++ không có chức năng xuất ra bất kỳ ký tự cụ thể nào. Ngay cả đối với các ký tự chữ và số cơ bản như 'a' hoặc '2' C++ không có chức năng thực sự xuất chúng. Tất cả nó có khả năng làm là chuyển đổi những literals thành mã ký tự mà sau đó được giải thích bởi dòng đầu ra chúng được gửi đến. Nói chung kết quả này nhìn thấy một 'a' hoặc '2' trên màn hình nhưng cho một số giao diện điều khiển và/hoặc hệ thống font lạ bạn có thể nhận được bất cứ điều gì. –
cho siêu kịch bản hay kịch bản tiểu bạn cần sử dụng giá trị ascii của ký tự hoặc số.
Ví dụ: Siêu tập lệnh 2 cho x², chúng tôi cần lấy số ascii value of super script of 2
(tìm kiếm trong google cho điều đó) tức là - 253
. Để gõ ký tự ascii bạn phải làm alt + 253
ở đây, bạn có thể viết một số bất kỳ, nhưng 253 của nó trong trường hợp này.
Ví dụ: - cout<<"x²";
Vì vậy, bây giờ nó sẽ hiển thị x²
trên màn hình màu đen.
Tôi đã cố gắng hoàn thành nhiệm vụ này với mục đích tạo bộ giải phương trình bậc hai. Viết ax²
bên trong một cout <<
bằng cách giữ ALT trong khi nhập 253 được hiển thị đúng trong mã nguồn chỉ, NHƯNG KHÔNG trong bảng điều khiển. Khi chạy chương trình, nó xuất hiện dưới dạng hình chữ nhật có màu sáng thay vì chỉ số trên 2.
Một giải pháp đơn giản cho điều này dường như là số nguyên 253 như char, như thế này ... (char)253
.
Vì giáo sư của chúng tôi không khuyến khích chúng tôi sử dụng 'số ma thuật', tôi đã khai báo nó là biến số không đổi ... const int superScriptTwo = 253; //ascii value of super script two
.
Sau đó, nơi tôi muốn bản ghi 2 xuất hiện trong bảng điều khiển, tôi truyền biến của mình dưới dạng char
như thế này ... cout << "f(x) = ax" << (char)superScriptTwo << " + bx + c";
và hiển thị hoàn hảo.
Có lẽ thậm chí còn dễ dàng hơn để tạo nó như là một char
để bắt đầu và đừng lo lắng về việc truyền. Mã này cũng sẽ in một tập lệnh siêu 2 lên bàn điều khiển khi được biên dịch và chạy trong VS2013 trên Lenovo chạy Windows 7 của tôi ...
char ssTwo = 253;
cout << ssTwo << endl;
Tôi hy vọng một người nào đó sẽ thấy điều này hữu ích. Đây là bài viết đầu tiên của tôi, bao giờ, vì vậy tôi xin lỗi trước nếu tôi vô tình vi phạm bất kỳ giao thức ngăn xếp ngăn xếp nào để trả lời câu hỏi được đăng cách đây hơn 5 năm.Bất kỳ sự cố như vậy không phải là cố ý.
Tại sao bạn không thử ASCII?
Khai báo một ký tự và đặt giá trị ASCII là 253
rồi in ký tự.
Vì vậy, mã của bạn nên đi như thế này;
char ch = 253;
cout<<"cm"<<ch;
Điều này chắc chắn sẽ in cm .
cout << "cm^2"; :) – dgnorton
Bạn có thể xuất HTML và hiển thị trong cửa sổ, cập nhật bằng AJAX không? –