精华内容
下载资源
问答
  • cout 输出16进制

    2017-04-21 13:21:55
    // 输出16进制, setbase(int)可以设置8等。  cout   http://bbs.csdn.net/topics/260000993   #include  using namespace std;   int main(void) {  char data[8]

    cout<<hex<<i<<endl; //输出十六进制数
    cout<<oct<<i<<endl; //输出八进制数
    cout<<dec<<i<<endl; //输出十进制数

     

    // 输出16进制, setbase(int)可以设置8等。

     cout << setbase(16) << i << endl;

     

    http://bbs.csdn.net/topics/260000993

     

    #include <iostream>
    using  namespace  std;
     
    int  main( void )
    {
         char  data[8] = {0x68,0x04, 0x43,0x00,0x00,0x00}; 
         for  ( int  i=0;i<8;i++)
         {
             cout << hex << data[i] << endl;
         }
         
        return  0;
    展开全文
  • cout输出16进制

    2016-09-08 16:13:13
    // 输出16进制, setbase(int)可以设置8等。  cout (16) ;   // 方法3  setiosflags(ios::showbase);  cout ;    cout ;    system("pause");  return 0; ...

    #include "stdafx.h"
    #include "stdlib.h"
    #include "iostream"
    #include<iomanip>  

    using namespace std;

     

    int _tmain(int argc, _TCHAR* argv[])
    {

     unsigned int i = 0;
     int temp = (int)i -1;


     --i;

    cout << i << endl;  // i为一个最大整数。

     

    // 方法1

    cout<<hex<<i<<endl; //输出十六进制数
    cout<<oct<<i<<endl; //输出八进制数
    cout<<dec<<i<<endl; //输出十进制数

    // 方法2

    // 输出16进制, setbase(int)可以设置8等。

     cout << setbase(16) << i << endl;

     

    // 方法3

     setiosflags(ios::showbase);
     cout << hex << i << endl;

     

     cout << temp << endl;

     

     system("pause");
     return 0;
    }

     

     

    int _tmain(int argc, _TCHAR* argv[])
    {
     //int i = 3;
    // B b;
    //  b.func();
    //  //b.func(i);
    //  b.BASE::func(i);

     unsigned int i = 0;
     int temp = (int)i -1;
     --i;
     cout << "temp ==" << temp << endl;
     cout << "i ==" << i << endl;

     cout.setf(ios::showbase); 
     cout.setf(ios_base::hex,   ios_base::basefield); 
     cout << "设置16进制" << endl;
     cout << "temp ==" << temp << endl;
     cout << "i ==" << i << endl;

     cout.unsetf(ios::hex);
     cout << "取消16进制" << endl;
     cout << "temp ==" << temp << endl;
     cout << "i ==" << i << endl;


     //cout << hex << i << endl;

     //cout << setbase(16) << i << endl;

    //  setiosflags(ios::showbase);
    //  cout << hex << i << endl;


    //  BASE *b = new A();
    //  b->func();

     system("pause");
     return 0;
    }

     

    cin与cout
    一:标准输入函数cin
    不知道说它是个函数对还是不对,它是代表标准的输入设备--键盘。他是属于流的,他的用法和流的用法是一样的。也就是:cin>>变量;
    小小的说明一下,输入多个变量可以写在一行,如:cin>>x>>y>>z;
    这样写不是不允许,而是不好看,如果是不同的变量类型,那就更是没头没脑了。除了你,人家是不知道该输入什么的,所以,一般在输入语句的前面,我们一般都
    要做一个提示,请输入×××,让人家心里有个底,知道这个变量是做什么的。
    另外,这个函数是不用带地址符号"&"的,也不用写明变量类型,千万不要跟scanf混淆。当然他就也不检查变量输入是否合法。如:
    int i;
    cout<<"please input a number:"
    cin>>i;
    cout<<"i="<<i<<endl;
    如果你输入的是一个字符如'a'那么他也不检查,但你输出的结果不是正确的,这要是手工进行检查。当然他也跟scanf一样,如果在循环内部输入不合法的变量值,那么也将陷入死循环。如下:
    /*一个输入不合法变量陷入死循环的例子*/
    #include <iostream.h>
    main()
    {
    int i;
    while(i!=-1)
    {
    cout<<"i="
    cin>>i; /*请输入不是一个字符如'a'试试*/
    cout<<endl;
    }
    }

    如上一个程序,如果你输入的不合法,那就将陷入死循环。解决的办法有个一,把cin>>i;语句移到判断循环的语句中,那么,你输入的如果是不合法的变量,他将跳出循环。
    cin是用空格来分隔输入的。请看看如下的例子:

    /*一个空格分隔使输入的变量达不到希望的值*/
    #include <iostream.h>
    main()
    {
    char str[20];
    cout<<"please input a string:";
    cin>>str; /*你试着输入"hello word"*/
    cout<<endl<<"str="<<str;
    }
    看得到是什么结果呢?得到的仅仅是str=hello,为什么呢?因为cin是以空格为分隔的,当你输入一个空格时,那他就认为后面的输入不属于这里了,
    认为应该给后面的变量了。另外,当你输入的字符串大于分配的空间时,还会出现溢出现象。当然,还有整行输入的函数,包括空格也一起输入了,以后也会学到。
    二、标准输出函数cout
    说cout是函数,也跟cin一样,不知道对不对。他代表的是标准输出设备--显示器。其实前面已经用过很多次这个函数了。我们就通过一个例子来进行格式化的输出就是了,大家就体会体会这个例子就行了,比printf灵活了很多。
    首先,我们可以按16进制,8进制和10进制来显示我们的数据,如下:
    /*一个按进制输出的例子*/
    #include<iostream.h>
    void main()
    {
    int x=30, y=300, z=1024;
    cout<<x<<' '<<y<<' '<<z<<endl; //按十进制输出
    cout.setf(ios::showbase | ios::uppercase); //设置基指示符输出和数值中的字母大写输出
    cout<<x<<' '<<y<<' '<<z<<endl;
    cout.unsetf(ios::showbase | ios::uppercase); //取消基指示符输出和数值中的字母大写输出
    cout.setf(ios::oct); //设置为八进制输出,此设置不取消一直有效
    cout<<x<<' '<<y<<' '<<z<<endl; //按八进制输出
    cout.setf(ios::showbase | ios::uppercase); //设置基指示符输出和数值中的字母大写输出
    cout<<x<<' '<<y<<' '<<z<<endl;
    cout.unsetf(ios::showbase | ios::uppercase); //取消基指示符输出和数值中的字母大写输出
    cout.unsetf(ios::oct); //取消八进制输出设置,恢复按十进制输出
    cout.setf(ios::hex); //设置为十六进制输出
    cout<<x<<' '<<y<<' '<<z<<endl;
    cout.setf(ios::showbase | ios::uppercase); //设置基指示符输出和数值中的字母大写输出
    cout<<x<<' '<<y<<' '<<z<<endl;
    cout.unsetf(ios::showbase | ios::uppercase); //取消基指示符输出和数值中的字母大写输出
    cout.unsetf(ios::hex); //取消十六进制输出设置,恢复按十进制输出
    cout<<x<<' '<<y<<' '<<z<<endl;
    }
    我们用cout.setf()设置输出的格式,用cout.unsetf()取消格式。可以看出10进制在输出的时候不管有没有设置基指示符ios::
    showbase,都没用,8进制再输出的时候在前面加0,而16进制是在前面加0X。而对于数值中字母大写输出,只对16进制有用,以后我们就应该看情
    况使用了。当然,我们前面已经说了,还有一种方法也可以实现格式化输出,那就是使用操纵算子,如下,
    /*一个按进制输出的例子*/
    #include<iomanip.h>
    void main()
    {
    int x=30, y=300, z=1024;
    cout<<x<<' '<<y<<' '<<z<<endl; //按十进制输出
    cout<<oct<<x<<' '<<y<<' '<<z<<endl; //按八进制输出
    cout<<setiosflags(ios::showbase); //设置基指示符
    cout<<x<<' '<<y<<' '<<z<<endl; //仍按八进制输出
    cout<<resetiosflags(ios::showbase); //取消基指示符
    cout<<hex<<x<<' '<<y<<' '<<z<<endl; //按十六进制输出
    cout<<setiosflags(ios::showbase | ios::uppercase);
    //设置基指示符和数值中的字母大写输出,
    cout<<x<<' '<<y<<' '<<z<<endl; //仍按十六进制输出
    cout<<resetiosflags(ios::showbase | ios::uppercase);
    //取消基指示符和数值中的字母大写输出
    cout<<x<<' '<<y<<' '<<z<<endl; //仍按十六进制输出
    cout<<dec<<x<<' '<<y<<' '<<z<<endl; //按十进制输出
    从 Visual C++ .NET 2003 开始,移除了旧的 iostream 库。
    标准 C++ 库和以前的运行时库之间的主要差异在于 iostream 库。iostream 实现的具体细节已经更改,如果想链接标准 C++ 库,可能有必要重写代码中使用 iostream 的部分。
    必须移除任何包含在代码中的旧 iostream 头文件(fstream.h、iomanip.h、ios.h、iostream.h、istream.h、ostream.h、streamb.h 和 strstrea.h),并添加一个或多个新的标准 C++ iostream 头文件(<fstream>、<iomanip>、<ios>、<iosfwd>、<iostream>、<istream>、<ostream>、<sstream>、<streambuf> 和 <strstream>,所有头文件都没有 .h 扩展名)。
    下表描述新的标准 C++ iostream 库不同于旧 iostream 库的行为。
    在新的标准 C++ iostream 库中:
    open 函数不采用第三个参数(保护参数)。 
    无法从文件句柄创建流。 
    除了几个例外,新的标准 C++ 库中的所有名称都在 std 命名空间中。有关更多信息,请参见使用 C++ 库头。 
    单独用 ios::out 标志无法打开 ofstream 对象。ios::out 标志必须在逻辑 OR 中和另一个 ios 枚举数组合;比如,和 ios::in 或 ios::app 组合。 
    因为设置了 eofbit 状态,到达文件尾后 ios::good 不再返回非零值。 
    除非知道当前没有设置基标志,否则 ios::setf(_IFlags) 不应和 ios::dec、ios::oct 或 ios::hex 的标志值一起使用。格式化的输入/输出函数和运算符假定只设置了一个基。改用 ios_base。例如,setf( ios_base::oct, ios_base::basefield ) 清除所有基信息并将基设置成八进制。 
    ios::unsetf 返回 void 而不是以前的值。 
    若出现错误,istream::get( char& _Rch ) 不分配给 Rch。 
    istream::get( char* _Pch, int _Ncount, char _Delim ) 有三点不同: 
    没读取任何内容时设置 failbit。 
    提取的字符后总是存储一个 eos(与结果无关)。 
    值为 -1 时 _Ncount 是一个错误。 
    具有无效参数的 istream::seekg 不设置 failbit。 
    返回类型 streampos 是具有重载运算符的类。在返回 streampos 值(比如 istream::tellg、ostream::tellp、strstreambuf::seekoff 和 strstreambuf::seekpos)的函数中,应将返回值转换成所需的类型:streamoff、fpos_t 或 mbstate_t。 
    strstreambuf::strstreambuf( _Falloc, _Ffree ) 中的第一个函数参数采用 size_t 参数而不是 long。 
    除了上述改动外,以下作为旧 iostream 库元素的函数、常数和枚举数不是新 iostream 库的元素:
    filebuf、fstream ifstream 和 ofstream 的 attach 成员函数 
    filebuf、fstream ifstream 和 ofstream 的 fd 成员函数 
    filebuf::openprot 
    filebuf::setmode 
    ios::bitalloc 
    ios::nocreate 
    ios::noreplace 
    ios::sync_with_stdio 
    streambuf::out_waiting 
    streambuf::setbuf(相同的行为使用 rdbuf -> pubsetbuf)

     

    展开全文
  • c++ cout 输出16进制数据

    千次阅读 2020-02-04 17:16:08
    demo: #include #include using namespace std; int main() { char *ch; void *in; int i=0x11223344,j;... cout(int)*(ch+j);//hex输出必须对应int类型,否则输出ASCII码 } return 0; }

    demo:

    #include <iostream>
    #include <iomanip>
    using namespace std;
    
    int main() {
        char *ch;
        void *in;
    int i=0x11223344,j;
    
        in=&i;
        ch=(char*)in;
        for(j=0;j<4;j++)
        {
    
            /*setiosflags(ios_base::hex)不起作用*/
            cout<<hex<<(int)*(ch+j)<<endl;//hex输出必须对应int类型,否则输出ASCII码
    
        }
    
        return 0;
    }
    展开全文
  • cout输出16进制数(转)

    千次阅读 2010-12-13 15:29:00
    cout输出16进制2010-02-09 18:21 #include "stdafx.h" #include "stdlib.h" #include "iostream" #include  using namespace std; int _tmain(int argc, _TCHAR* argv[])...

    cout输出16进制
    2010-02-09 18:21

    #include "stdafx.h"
    #include "stdlib.h"
    #include "iostream"
    #include<iomanip>  

    using namespace std;

    int _tmain(int argc, _TCHAR* argv[])
    {

    unsigned int i = 0;
    int temp = (int)i -1;


    --i;

    cout << i << endl; // i为一个最大整数。

    // 方法1

    cout<<hex<<i<<endl; //输出十六进制数
    cout<<oct<<i<<endl; //输出八进制数
    cout<<dec<<i<<endl; //输出十进制数

    // 方法2

    // 输出16进制, setbase(int)可以设置8等。

    cout << setbase(16) << i << endl;

    // 方法3

    setiosflags(ios::showbase);
    cout << hex << i << endl;

    cout << temp << endl;

    system("pause");
    return 0;
    }

    int _tmain(int argc, _TCHAR* argv[])
    {
    //int i = 3;
    // B b;
    // b.func();
    // //b.func(i);
    // b.BASE::func(i);

    unsigned int i = 0;
    int temp = (int)i -1;
    --i;
    cout << "temp ==" << temp << endl;
    cout << "i ==" << i << endl;

    cout.setf(ios::showbase); 
    cout.setf(ios_base::hex,   ios_base::basefield); 
    cout << "设置16进制" << endl;
    cout << "temp ==" << temp << endl;
    cout << "i ==" << i << endl;

    cout.unsetf(ios::hex);
    cout << "取消16进制" << endl;
    cout << "temp ==" << temp << endl;
    cout << "i ==" << i << endl;


    //cout << hex << i << endl;

    //cout << setbase(16) << i << endl;

    // setiosflags(ios::showbase);
    // cout << hex << i << endl;


    // BASE *b = new A();
    // b->func();

    system("pause");
    return 0;
    }

    展开全文
  • 使用cout输出16进制,8进制,2进制

    千次阅读 2017-06-10 18:55:17
    #include #include #include using namespace std; int main() ... cout  cout  cout  cout(a)(a)  cout  char binary_text[100];  itoa(a, binary_text, 2);  return 0
  • C++ cout输出16进制

    万次阅读 2012-07-06 10:02:49
    cout 输出: Msg = 50 表2-4 I/O流的常用控制符   控制符 描 述 dec hex oct setfill(c) setdivcision(n)  setw(n)  setiosflags(ios::fixed) setiosflag
  • 使用cout输出16进制数和10进制数

    千次阅读 2018-03-08 15:19:58
    //16进制 unsigned char * pc = (unsigned char *)&i; // 把i的地址变成一个指向char*的指针 cout ( int )*pc " " ( int )*(pc + 1 ) " " ( int )*(pc + 2 ) " " ( int )*(pc + 3 ) " " ...
  • c++中利用cout输出8进制,16进制

    千次阅读 2015-08-22 16:02:54
    c++中利用cout输出8进制,16进制
  • cout.setf(ios::hex,ios::basefield)...//设置十六进制显示数值 cout.setf(ios::showbase|ios::uppercase);//设置0x头和大写   转载于:https://www.cnblogs.com/oyjj/archive/2011/06/08/2132857.html...
  • C++中cout输出十六进制

    万次阅读 2014-10-12 21:10:16
    在ASCII中,一共定义了128个字符,其中33个无法显示,为0~31和127,32到126为可显示字符,当使用cout输出一个char型字符时,如果是可显示范围内,则输出相应可显示字符,其余的都输出乱码。 如果我们要使字符按...
  • //默认输出进制 cout&lt;&lt;oct&lt;&lt;x&lt;&lt;dec&lt;&lt;x&lt;&lt;hex&lt;&lt;x&lt;&lt;endl;//oct、dec、hex类似格式控制符,控制其后的变量
  • C++ cout 打印输出16进制数组

    万次阅读 2018-08-16 15:45:48
    https://blog.csdn.net/chienchia/article/details/40022141
  • 使用cout/pintf输出16进制,8进制比较常见,输出2进制的方法倒比较新颖。比我在之前的博客文章的移位方法要好一些了。 [cpp] view plain copy // 【MoreWindows工作笔记3】 使用cout/pintf输出16...
  • 【MoreWindows工作笔记3】 使用cout/pintf输出16进制,8进制,2进制数据
  • cout<<hex<<i<<endl; //输出十六进制cout<<oct<<i<<endl; //输出进制cout<<dec<<i<<endl; //输出进制
  • //这里将cout预定义为16进制输出 cout<<n; cout<<std::oct; //这里将cout预定义为8进制输出 cout<<" "<<n; cout<<std::dec; //这里将cout预定义为10进制输出 ...
  • cout快捷转换进制

    2019-02-08 21:14:00
    //输出十六进制cout<<oct<<i<<endl; //输出进制cout<<dec<<i<<endl; //输出进制cout<<bin<<i<<endl; //输出进制数 /...
  • 利用c++ cout如何输出不同进制

    万次阅读 2017-09-27 15:26:34
    cout<<hex<<i<<endl; //输出十六进制cout<<oct<<i<<endl; //输出进制cout<<dec<<i<<endl; //输出进制数 co...
  • cout的二进制输出实现

    千次阅读 2016-02-24 11:54:14
    1、在头文件中添加bitset类,即#include ; 2、添加std::bitset,以使用成员函数bitset。 #include ... //打印出的二进制长度为4*4=16 std::cout(a); return 0; } 运行结果为:0000000000001011
  • 1、今天在用cout 输出 unsigned char 形式的数据时,控制台显示的是乱码,改用printf 的形式输出,解决了这个问题,这在C/C++中比较容易混淆。 unsigned char i=0xaa; char j=1; cout; //输出乱码 cout
  • C++控制台输出16进制

    2020-08-14 11:53:40
    如何在控制台程序中输出16进制? char data[6] = { 0x0A,0x0B, 0x0C, 0x0D, 0x0E, 0x0F }; for (int i = 0; i < 6; i++) { cout << setfill('0') << setw(2); cout << setiosflags(ios:...
  • cin cout 输入输出十六进制,八进制

    千次阅读 2017-04-21 15:48:21
    hex : 十六进制 oct : 八进制 uppercase : 十六进制格式字母变大写 showpos : 在正数前显示+号 showbase : 十六进制前显示 0x, 八进制前显示0 boolalpha:逻辑值1和0用ture和false 输出 left : 输出...
  • 使用C++输入输出16进制数、8进制数 #include <iostream> #include<cstdio> using namespace std; int main() { int a, b; cin >> hex >> a >> b;//输入 16进制 ,输入8进制 则把...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,628
精华内容 11,451
关键字:

cout输出16进制