Since there is a lack of books and training for C programmers on the mainframe, we have put together the following tutorials, which are meant to supplement the C education that is available.
| Design |
The components of C programs compared to assembler & COBOL programs
|
| Punctuation |
Braces, brackets and other awkward characters
|
| Types |
Mainframe variable types: integers, floating point numbers, characters etc.
|
| Pointers |
Using pointers to manipulate variables
|
| Structures |
Defining records, control blocks and parameter lists etc.
|
| Loops |
Using For and While loops
|
| Strings |
Text handling using character arrays
|
| #define |
Macros, equates and conditional compiles
|
Vendors home in on C++ for Web services An abundance of C and C++ code exists today in the enterprise and customers won't be able to leave that code behind. Companies are not going to be able to afford to start all development from scratch. They need to be able to bring some of their legacy code forward to participate in a Web Services development world. (Feb. 2002 InfoWorld)
What's New in z/OS? A new C++ compiler is aimed at simplifying application porting to z/OS. Also built in is support for technologies such as Enterprise JavaBeans and XML. (Dec. 2001 ComputerWorld)
Winning the Passing Game Looking at the design of modern CPUs it is easy to see that inlining does not provide any performance improvement. In most cases, call and return instructions are processed in zero cycles due to successful static branch prediction and instruction prefetching. Perhaps the only reason to use inlining is when the routines are extremely compact and called very frequently. (Jan. 2001 Dr Dobbs Journal)
Reigning in C++ Test Harnesses Unit testing is important-if the bricks are shoddy, you won't have much of a house, regardless of how well they're laid. The goal is to show that each piece performs as intended and exhibits no pathological behavior when presented with unexpected input. "Integration testing," on the other hand, is designed to ensure that the pieces fit together as designed and that the system as a whole behaves correctly under all reasonable conditions. (Nov. 2000 Software Development Magazine)
The Origins of C Dennis Ritchie uncovered some old tapes with the complete source code to some of the original C compilers. You probably won't be able to compile them, but they give a fascinating look at the evolution of the language. (Oct. 2000 Dr.Dobbs Journal)
Sites of Interest:
Google runs a discussion list for C programmers.
The SAS Institute's SAS/C Compiler is the most widely installed C language product for IBM mainframes. This home page has a list of frequently-requested URL's for SAS C and C++ for IBM's System/390 mainframe.
IBM's z/OS C/C++ home page contains links to all pages related to C and C++ on all IBM's supported platforms, including OS/390 and z/OS.
C - The Programming Language C is possibly the most versatile and widely-used computer programming language ever created. Obscure and sometimes irritatingly concise, C somehow manages to fulfil the needs of tons of talented programmers who know what they want to say and do not wish to use more words than necessary. (h2g2 BBC)
Free C/C++ Compilers and Interpreters