0

I have a c2965 problem that I need to get solved. I am new to c++ and when I try to compile my script I get the following error.

error c2065:'long64' : undeclared identifier

on the line

long64 *x, *y;

I am not sure what have caused this and it seems that this is a relatively uncommon issue. I work on a 64bit system and uses a 64bit compiler installed in visual studio 2008.

If anyone know the cause, please answer this. Thanks beforehand

Vlad from Moscow
  • 301,070
  • 26
  • 186
  • 335
patrik
  • 4,506
  • 6
  • 24
  • 48
  • 3
    Is it `LONG64` or `long64`? Neither are standard, and no standard 64-bit minimum type came until C++11. If you're talking about the Windows API type `LONG64`, you'll have to at least include the header. – chris Jan 03 '14 at 10:54
  • 1
    Where did you get this declaration from? What made you type `long64`? – Joseph Mansfield Jan 03 '14 at 10:55
  • Sorry a typo, changed to long64, the code is a mex submission in matlab and I am not completely sure who the writer is, I have just began to learn c++ and have never worked in 64bit before. – patrik Jan 03 '14 at 11:01
  • possible duplicate of [What is an 'undeclared identifier' error and how do I fix it?](http://stackoverflow.com/questions/22197030/what-is-an-undeclared-identifier-error-and-how-do-i-fix-it) – sashoalm Mar 05 '14 at 13:26
  • Thanks I will remove this – patrik Mar 05 '14 at 15:23

1 Answers1

2

The error message is clear enough: the compiler does not see the definition of name long64, It is possible that the corresponding definition is present in some header file that you forgot to include in the module. You can try to include header <cstdint> and use type int64_t instead of long64

Vlad from Moscow
  • 301,070
  • 26
  • 186
  • 335