C ++ Source help, справка по функции cout - PullRequest
2 голосов
/ 30 октября 2010

Я новичок в C ++, я на самом деле учусь и в экспериментальной части, однако, во время экспериментов я столкнулся с проблемой с функцией cout. Программа не работает при компиляции. Мне было интересно, если вы, ребята, могли бы помочь мне: вот источник, который я написал.

#include "stdafx.h"
#include <iostream>
using namespace std;

int main()
{
 signed short int a;
 signed short int b;
 signed short int c;
 a = 25;
 b = 8;
 c = 12;

 cout << a << endl;
 cout << b << endl;
 cout << c << endl;
 cout << "What is the sum of a + b - c? The answer is: ";
 cout << a + b - c;
 cout << endl;
 cout << "Why is this?" << endl;
 cout << "This is because: ";
 cout << "a + b equals: " << a + b << endl;
 cout << "and that minus " c << " is" << a + b - c << endl;
 cout << "If that makes sense, then press enter to end the program.";

 cin.get();
 return 0;


}

Мне также было интересно, что означают подписанные и неподписанные, я думаю, что это зависит от компилятора? Я использую Visual C ++ 2008 Express Edition.

Спасибо всем, кто может указать на мои ошибки и помочь мне!

Ответы [ 2 ]

10 голосов
/ 30 октября 2010
 cout << "and that minus " c << " is" << a + b - c << endl;
 //                       ^

Вам не хватает <<.


unsigned означает, что тип данных может хранить только неотрицательные целые числа, тогда как signed означает, что он также может хранить отрицательное целое число (какв нем может быть отрицательный «знак»).

Точный диапазон поддерживаемых целых чисел зависит от платформы.Обычно unsigned short поддерживает значения в диапазоне от 0 до 65535, а signed short поддерживает от -32768 до 32767.

2 голосов
/ 30 октября 2010
cout << "and that minus " c << " is" << a + b - c << endl;

Вам не хватает "<<" между строками "и этим минусом" и коротким c. </p>

Подпись означает, что один бит предназначен для определения того, является ли значение отрицательным или нет, однако это также означает, что вы не можете иметь такое большое число, какое вы могли бы использовать без знака. По умолчанию переменные подписаны, если не указано иное.

...