C中的粗体输出

我正在构建一个字典,当我打印(输出)单词防御时,我想用粗体打印单词本身.
当我打印
cout<<word<<endl<<defention1<<defenition2<<endl;

我希望唯一的“字”是大胆的.

我怎样才能做到这一点?

解决方法

标准C使用各种区域设置/字符集以各种字母显示输出.但是,文本本身只是文本,没有格式化.如果您希望输出为彩色,粗体或斜体,则需要向终端发送适当的字符代码.但是,这是实现定义的,并不保证可以在所有平台上运行.例如,在Linux / UNIX中,如果终端支持,则可以使用 ANSI escape codes.

适用于我的Mac OS X的示例:

#include <iostream>

int main()
{
    std::cout << "\e[1mBold\e[0m non-bold" << std::endl; // displays Bold in bold
}

如果你愿意,你可以采取额外步骤并创建操纵器来打开/关闭加粗:

#include <iostream>

std::ostream& bold_on(std::ostream& os)
{
    return os << "\e[1m";
}

std::ostream& bold_off(std::ostream& os)
{
    return os << "\e[0m";
}


int main()
{
    std::cout << bold_on << "bold" << bold_off << " non-bold" << std::endl; 
}

相关文章

一.C语言中的static关键字 在C语言中,static可以用来修饰局...
浅谈C/C++中的指针和数组(二) 前面已经讨论了指针...
浅谈C/C++中的指针和数组(一)指针是C/C++...
从两个例子分析C语言的声明 在读《C专家编程》一书的第三章时...
C语言文件操作解析(一)在讨论C语言文件操作之前,先了解一下...
C语言文件操作解析(三) 在前面已经讨论了文件打开操作,下面...