none
ifstream.get(),int_type RRS feed

  • 问题

  • 我查看ifstream.get(),发现返回值是int_type,这是一个怎样的类型呢?

    我尝试用char接收返回值会出现异常,应该用什么类型来接收呢?

    如果要将一个文本文件显示在控制台上最标准的做法是什么呢?

    2015年8月16日 8:56

答案

  • 我知道了,第一个字符206与-50,二进制位是相同的,但char表示的最大正数是127,不能表示206,所以要根据程序的需要,有时用char,有时用int^_^
    • 已编辑 dream99 2015年8月17日 10:48
    • 已标记为答案 Shu 2017 2015年9月9日 1:48
    2015年8月17日 10:41

全部回复

  • 报什么异常,能贴出来看看吗?你可以试试一下代码:

    #include <iostream>     // std::cin, std::cout
    #include <fstream>
    using namespace std;
    
    int main()
    {
    	char str[256];
    
    	std::cout << "Enter the name of an existing text file: ";
    	std::cin.get(str, 256);    // get c-string
    
    	std::ifstream is(str);     // open file
    
    	char c;
    	while (is.get(c))          // loop getting single characters
    		std::cout << c;
    
    	is.close();                // close file
    
    	return 0;
    
    }

    这些函数都可以看到源码的,右键点击int_type选择Go To Definition,一步一步往前推,你就可以看到怎么定义的了。


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2015年8月17日 8:47
  • 你好,这就是我说的异常,这两种输出用的都是同一个文件,就因为这样,类型用不对,有时在程序中会出现异常



    • 已编辑 dream99 2015年8月17日 10:38
    2015年8月17日 10:35
  • 我知道了,第一个字符206与-50,二进制位是相同的,但char表示的最大正数是127,不能表示206,所以要根据程序的需要,有时用char,有时用int^_^
    • 已编辑 dream99 2015年8月17日 10:48
    • 已标记为答案 Shu 2017 2015年9月9日 1:48
    2015年8月17日 10:41