Click here to Skip to main content
15,904,416 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: warning problem Pin
Michael P Butler27-Sep-03 2:51
Michael P Butler27-Sep-03 2:51 
GeneralRe: warning problem Pin
AORD27-Sep-03 11:34
AORD27-Sep-03 11:34 
GeneralRe: warning problem Pin
coda_x27-Sep-03 16:28
coda_x27-Sep-03 16:28 
Generalwarning problem Pin
coda_x27-Sep-03 2:24
coda_x27-Sep-03 2:24 
GeneralRe: warning problem Pin
Ian Darling27-Sep-03 2:46
Ian Darling27-Sep-03 2:46 
GeneralRe: warning problem Pin
Mike Dimmick27-Sep-03 12:18
Mike Dimmick27-Sep-03 12:18 
Generalanalyze C++ source code(VC) and Java source code Pin
candan26-Sep-03 23:09
professionalcandan26-Sep-03 23:09 
GeneralRe: analyze C++ source code(VC) and Java source code Pin
Mike Dimmick27-Sep-03 2:37
Mike Dimmick27-Sep-03 2:37 
Ah, something on which I have experience Wink | ;)

In the final year of my degree, I had to select an individual project. One of the projects offered was to produce an application to draw diagrams of the static structure of an input program - I selected this project.

Subsequently I discovered that it's extremely hard to write a C++ parser. A Java parser isn't a lot easier. My difficulties in writing the parser basically meant that the rest of the application never got written, and I damn near failed the project.

Anyway, while trying to write it, I posted numerous questions and progress reports on various Usenet newsgroups. The best way to read it all is to Google[^] for it.

See also http://www.nobugs.org/developer/parsingcpp/[^].

Since then, I've come to the opinion that you should use the most powerful tools possible when parsing C++ - ones that cope with the ambiguity inherent in the language. The general name for this type of tool is a 'Generalised LR' parser - often abbreviated GLR. Elkhound[^] looks quite interesting.

As for me, I'm steering well clear of parsing for the meantime. I think the understanding of C++ I got from trying to parse it was quite helpful, anyway.

For either language, you'll want to get hold of the appropriate specification. For Java, the specification is The Java Language Specification[^]. For C++, it's ISO 14882[^] (which has rocketed in price - this used to be $18! - although you may find a copy on the web somewhere.)
GeneralRe: analyze C++ source code(VC) and Java source code Pin
Taka Muraoka27-Sep-03 14:41
Taka Muraoka27-Sep-03 14:41 
GeneralRe: analyze C++ source code(VC) and Java source code Pin
Mike Dimmick27-Sep-03 23:59
Mike Dimmick27-Sep-03 23:59 
GeneralRe: analyze C++ source code(VC) and Java source code Pin
Taka Muraoka28-Sep-03 22:14
Taka Muraoka28-Sep-03 22:14 
GeneralRe: analyze C++ source code(VC) and Java source code Pin
candan30-Sep-03 14:34
professionalcandan30-Sep-03 14:34 
GeneralRasApi error Pin
Kannan Ramanathan26-Sep-03 21:52
Kannan Ramanathan26-Sep-03 21:52 
GeneralRe: RasApi error Pin
Kannan Ramanathan26-Sep-03 21:55
Kannan Ramanathan26-Sep-03 21:55 
GeneralRe: RasApi error Pin
Mike Dimmick27-Sep-03 12:24
Mike Dimmick27-Sep-03 12:24 
GeneralRe: RasApi error Pin
Kannan Ramanathan28-Sep-03 17:53
Kannan Ramanathan28-Sep-03 17:53 
GeneralSending files via FTP from VC++ app. Pin
DAVE_ES26-Sep-03 21:45
DAVE_ES26-Sep-03 21:45 
GeneralRe: Sending files via FTP from VC++ app. Pin
Member 54428726-Sep-03 21:58
Member 54428726-Sep-03 21:58 
GeneralSending files using socket. Pin
Anthony_Yio26-Sep-03 21:30
Anthony_Yio26-Sep-03 21:30 
GeneralCompiling error with "htmlhelp.h". Pin
George226-Sep-03 20:50
George226-Sep-03 20:50 
GeneralRe: Compiling error with "htmlhelp.h". Pin
peterchen26-Sep-03 22:58
peterchen26-Sep-03 22:58 
GeneralRe: Compiling error with "htmlhelp.h". Pin
George227-Sep-03 0:30
George227-Sep-03 0:30 
Generalcreate splitter using cpslitterwnd class Pin
murali_utr26-Sep-03 20:19
murali_utr26-Sep-03 20:19 
GeneralEmail viewer suggestions Pin
LukeV26-Sep-03 20:06
LukeV26-Sep-03 20:06 
GeneralRe: Email viewer suggestions Pin
Ian Darling26-Sep-03 21:23
Ian Darling26-Sep-03 21:23 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.