C++ Printf和fstream操作员<&书信电报;显示不同的值。为什么?

C++ Printf和fstream操作员<&书信电报;显示不同的值。为什么?,c++,opencv3.0,C++,Opencv3.0,我试图得到两只眼睛的x和y坐标值。我使用opencv XML文件检测到它,在控制台中,printf()中显示了两个不同的x值,而我使用操作符保存的文本文件包含 使用std::cout; 使用std::endl; 使用std::oct; 使用std::hex; int main() { 长整数位置值=12345678; 您可以告诉printf()以octall形式输出整数,而运算符为什么使用%o?希望打印八进制数? printf("X = %o,Y = %o\n", eyes[j].x, eyes

我试图得到两只眼睛的
x
y
坐标值。我使用opencv XML文件检测到它,在控制台中,
printf()
中显示了两个不同的
x
值,而我使用
操作符
保存的文本文件包含
使用std::cout;
使用std::endl;
使用std::oct;
使用std::hex;
int main()
{
长整数位置值=12345678;

您可以告诉
printf()
octall形式输出整数,而
运算符为什么使用%o?希望打印八进制数?
printf("X = %o,Y = %o\n", eyes[j].x, eyes[j].y);

ofstream coordinates;
coordinates.open("C:/Users/dougl/Desktop/Coordinates.txt");
coordinates << "X = " << eyes[j].x << "\n" << "Y = " << eyes[j].y;
#include <iostream>

using std::cout;
using std::endl;
using std::oct;
using std::hex;

int main()
{
  long int pos_value =  12345678;  

  cout << "The decimal value 12345678 is printed out as" << endl;

  cout << "octal:       " << oct << pos_value << endl;
  cout << "hexadecimal: " << hex << pos_value << endl << endl;

  return 0;
}
cout << "octal:       " << oct << pos_value << endl;