 |
__int64 question |
 |
30.10.2004, 16:18
|
#1
|
4294967296
Join Date: 03 2002
Location: /proc/1
Age: 40
Posts: 379
Rep Power: 0
|
__int64 question
Vozmojno li ne peregrujaya "<<" delat' 'cout' peremennuyu kotoraya imeet tip __int64
PHP Code:
main()
{
__int64 a;
cout << a;
}
__________________
Free your mind and your OS will follow
|
|
|
30.10.2004, 16:31
|
#2
|
Ego coder
Join Date: 07 2004
Location: Yerevan, Armenia
Age: 44
Posts: 3,738
Rep Power: 5
|
a chto ne kompilitsya? u menya pod vcpp 7.1 idet.
Code:
#include <iostream>
int main()
{
__int64 a=0x7fffffffffffffff;
std::cout << a;
system("pause");
}
__________________
Каждый сам кузнец своего счастья, и несчастья тоже.
Last edited by AvDav; 30.10.2004 at 17:03.
|
|
|
31.10.2004, 06:15
|
#3
|
Грустно...
Join Date: 08 2002
Location: Там, где всегда идут дожди
Age: 43
Posts: 21,717
Rep Power: 9
|
Quote:
Originally Posted by Boyov
Vozmojno li ne peregrujaya "<<" delat' 'cout' peremennuyu kotoraya imeet tip __int64
PHP Code:
main()
{
__int64 a;
cout << a;
}
|
1. у main обязательно должен быть возвращаемый тип и он int. Другого по стандарту не дано.
2. Не видно, откуда include - нут cout. Из iostream - a? тогда где std:: или using std::cout?
3. не видно, что за компилятор. я должен из воздуха высасывать эти данные?
4. Учись задавать вопросы. Предлагаю попробовать на EFnet серверах канал #C++ тебя быстро научат всему, что надо (если конечно не забанят за 5 минут).
|
|
|
01.11.2004, 13:22
|
#4
|
4294967296
Join Date: 03 2002
Location: /proc/1
Age: 40
Posts: 379
Rep Power: 0
|
Quote:
Originally Posted by Agregat
1. у main обязательно должен быть возвращаемый тип и он int. Другого по стандарту не дано.
|
soglasis', chto suti dela eto ne menyaet
Quote:
Originally Posted by Agregat
3. не видно, что за компилятор. я должен из воздуха высасывать эти данные?
|
Tot, kotiriy postavlyaetsya s Visual Studio 6.
Quote:
Originally Posted by Agregat
4. Учись задавать вопросы. Предлагаю попробовать на EFnet серверах канал #C++ тебя быстро научат всему, что надо (если конечно не забанят за 5 минут).
|
a oni tam vse takie AGResivnie ?
Code:
#include <iostream.h>
int main()
{
__int64 a = 0xfff;
cout << a;
return 0;
}
__________________
Free your mind and your OS will follow
|
|
|
01.11.2004, 13:26
|
#5
|
Грустно...
Join Date: 08 2002
Location: Там, где всегда идут дожди
Age: 43
Posts: 21,717
Rep Power: 9
|
1. меняет
2. уже ближе к сути дела
3. напиши, как Давид, если не выйдет снова поговорим.
|
|
|
01.11.2004, 13:32
|
#6
|
4294967296
Join Date: 03 2002
Location: /proc/1
Age: 40
Posts: 379
Rep Power: 0
|
Quote:
Originally Posted by Agregat
1. меняет
2. уже ближе к сути дела
3. напиши, как Давид, если не выйдет снова поговорим.
|
napisal, ne vishlo.
__________________
Free your mind and your OS will follow
|
|
|
01.11.2004, 13:37
|
#7
|
Грустно...
Join Date: 08 2002
Location: Там, где всегда идут дожди
Age: 43
Posts: 21,717
Rep Power: 9
|
значти не судьба. __инт64 не поддерживается потоками в 6 ВС. Видишь, как все просто. Я могу сказать, что 8 компилирует.
|
|
|
01.11.2004, 13:54
|
#8
|
VIP Faraon
Join Date: 09 2002
Location: Пески сахары
Age: 43
Posts: 2,895
Rep Power: 0
|
Попробуй поставить последний Мокрософт СДК, у него есть компилятор для 64 бит
__________________
Храни тебя Господь в сухом и прохладном месте...
|
|
|
01.11.2004, 14:04
|
#9
|
VIP Faraon
Join Date: 09 2002
Location: Пески сахары
Age: 43
Posts: 2,895
Rep Power: 0
|
Хотя если у тебя нет 64 битного виндовса, то и СДК тебе незачем 
можешь сделать cout по часттям, типа
int i = int_64_variable >> 32;
cout << i;
i = int_64_variable;
cout << i <<endl;
__________________
Храни тебя Господь в сухом и прохладном месте...
|
|
|
01.11.2004, 14:16
|
#10
|
Грустно...
Join Date: 08 2002
Location: Там, где всегда идут дожди
Age: 43
Posts: 21,717
Rep Power: 9
|
Quote:
Originally Posted by RAMZES
Хотя если у тебя нет 64 битного виндовса, то и СДК тебе незачем 
можешь сделать cout по часттям, типа
int i = int_64_variable >> 32;
cout << i;
i = int_64_variable;
cout << i <<endl;
|
позор.
|
|
|
01.11.2004, 14:39
|
#11
|
Ego coder
Join Date: 07 2004
Location: Yerevan, Armenia
Age: 44
Posts: 3,738
Rep Power: 5
|
semuliroval taki  )
Code:
std::ostream& operator<<(std::ostream &out, __int64 num)
{
static const char *pdigits="0123456789";
std::string str;
if(num<0)
{
out << '-';
num=-num;
}
do
str+=pdigits[num%10];
while(num/=10);
std::copy(str.rbegin(), str.rend(), std::ostream_iterator<char>(out, ""));
return out;
}
__________________
Каждый сам кузнец своего счастья, и несчастья тоже.
Last edited by AvDav; 01.11.2004 at 15:13.
Reason: ubral lishnee..
|
|
|
01.11.2004, 15:01
|
#12
|
Грустно...
Join Date: 08 2002
Location: Там, где всегда идут дожди
Age: 43
Posts: 21,717
Rep Power: 9
|
дав,
PHP Code:
std::copy(str.rbegin(), str.rend(), std::ostream_iterator<char>(os, ""));
кроме того я бы советовал ресайзать строчку в начале символов этак на 15, чтоб времени на реаллок не терять вообще.
|
|
|
01.11.2004, 15:02
|
#13
|
VIP Faraon
Join Date: 09 2002
Location: Пески сахары
Age: 43
Posts: 2,895
Rep Power: 0
|
да, забыл сказать - работает только в том случае, если делать output в hex...
типа
__int64 int_64_variable = 1234567898765;
int i = int_64_variable >> 32;
printf("%x", i);
i = int_64_variable;
printf("%x\n", i);
__________________
Храни тебя Господь в сухом и прохладном месте...
|
|
|
01.11.2004, 15:08
|
#14
|
Грустно...
Join Date: 08 2002
Location: Там, где всегда идут дожди
Age: 43
Posts: 21,717
Rep Power: 9
|
Quote:
Originally Posted by RAMZES
да, забыл сказать - работает только в том случае, если делать output в hex...
типа
__int64 int_64_variable = 1234567898765;
int i = int_64_variable >> 32;
printf("%d", i);
i = int_64_variable;
printf("%d\n", i);
|
Ну это вооще позор.
1. не cout
2. печаешь не hex, а десятично... то есть ес кодн ел хеч
|
|
|
01.11.2004, 15:13
|
#15
|
VIP Faraon
Join Date: 09 2002
Location: Пески сахары
Age: 43
Posts: 2,895
Rep Power: 0
|
Ну вот, Давид написал умную вещь
__________________
Храни тебя Господь в сухом и прохладном месте...
|
|
|
All times are GMT. The time now is 06:04. |
|
|