Loading...
');
document.write('');
document.write('');
document.write('');
counter++;
}
//-->
Web Search Help Center
Change Language: العربية Български Bahasa Indonesia Català Česky Српски Dansk Deutsch English (US) Español Français Italiano Latviešu Lietuvių Magyar Nederlands Norsk Polski Português Русский Hrvatski Română Slovenský Slovenščina Suomi Svenska ภาษาไทย Tagalog Türkçe Українська Ελληνικά עברית हिन्दी Tiếng Việt 中文(简体) 中文(繁體) 日本語 한국어
Google Help > Web Search Help > Information in Our Search Results > Concerns about content in our index
Google HomeAbout GoogleWeb Search Help Search Guides Basics of Search Advanced Search Search Results Page Setting Preferences Search FeaturesSpell checker, calculator & more
Services & ToolsDesktop Search, Toolbar, News & more
What can we help you with?
function SetChecked(whichSearch) {
if (document.getElementById("query").value == ""){
alert("To search the Help Center, please enter a keyword or phrase.");
return false;
}
else if (whichSearch == "web"){
window.location = "http://www.google.com/search?hl=en&q=" + document.getElementById("query").value;
}
else{
document.getElementById("search_form").action = "/support/bin/search.py";
document.getElementById("search_form").submit();
}
return false;
}
Why do some of my search results say 'This site may harm your computer?'
Print
We want our users to feel safe when they search the web, and we're continuously working to identify dangerous sites and increase protection for our users. This warning message appears with search results we've identified as sites that may install malicious software on your computer:
If you click the title of the result, you'll be shown the following warning rather than being taken immediately to the webpage in question:
You can choose to continue to the site at your own risk. However, please be aware that malicious software is often installed without your knowledge or permission when you visit these sites, and can include programs that delete data on your computer, steal personal information such as passwords and credit card numbers, or alter your search results. For more information on these types of sites, please visit StopBadware.org
If one of these sites downloads malicious software onto your computer, please read our additional information about reporting these sites and removing the software from your system.If you're the administrator of a site we've identified with this warning message, please visit the instructions found in our Webmaster Help Center to resolve the problem. Note that in some cases, third parties can add malicious code to legitimate sites, which would cause us to show the warning message.
You may also be interested in...
Other helpful articles:
How do I delete the drop-down list of my past searches?
How do I remove a page from Google's search results?
What should I do if a site in your search results downloaded malicious programs onto my computer? Contact Us
Boost your Web Search vocabulary
Our glossary will help get you started with Google Web Search terminology.
Learn from other Google users
Find answers, ask questions, and share your expertise with others in the Web Search Help Group.
©2008 Google - Google Home - About Google - Privacy Policy - Terms of Service - We're Hiring - Site Map - About Contacting Support
Wednesday, March 12, 2008
ddd
RRR
From Wikipedia, the free encyclopedia
Jump to: navigation, search
RRR may refer to:
The three Rs, a term used to describe the basics of education which stands for Reading, wRiting and aRithmetic
"Reduce, Reuse, Recycle" a slogan used by campaigners to indicate the preferred order for waste management in the waste hierarchy.
Reboot, Reinstall, Reformat, a phrase used in computing, particularly in relation to technical support
Räikkönen Robertson Racing, a Formula 3 racing team
Return Receipt Requested, a service provided by the US Postal Service in which a document is delivered to the sender when the letter or package is received
Saleen/Allen "RRR" Speedlab, a motor racing team founded by Steve Saleen and Tim Allen
Rayman Raving Rabbids a video game for Wii designed by Michel Ancel
3RRR, a community radio station, based in Melbourne, Australia.
RRRecords, a record label, also known as RRR.
The Reed Research Reactor, a research nuclear reactor used by Reed College.
The show, 'RRR' or 'Triple R' on the Leicester Station 'Takeover Radio'. Presented by Dan, Guy and Niki.
'Regular Rate & Rhythm' when referring to heart function in medical records
'Residual Resistivity Ratio', a measure of the purity of a material.
Requested Rate of Return
Reserve ratio requirement or required reserve ratio
Riki Rachtman Radio, a radio show in Los Angeles, California on KLSX until 1997.
The Red River Rebellion of 1869, led by Louis Riel
This disambiguation page lists articles associated with the same title. If an internal link led you here, you may wish to change the link to point directly to the intended article.
Retrieved from "http://en.wikipedia.org/wiki/RRR"
Categories: Disambiguation
Views
Article
Discussion
Edit this page
History
Personal tools
Log in / create account
if (window.isMSIE55) fixalpha();
Navigation
Main Page
Contents
Featured content
Current events
Random article
Interaction
About Wikipedia
Community portal
Recent changes
Contact Wikipedia
Donate to Wikipedia
Help
Search
Toolbox
What links here
Related changes
Upload file
Special pages
Printable version
Permanent link
Cite this page
Languages
Deutsch
Français
Svenska
This page was last modified on 28 January 2008, at 00:05.
All text is available under the terms of the GNU Free Documentation License. (See Copyrights for details.) Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a U.S. registered 501(c)(3) tax-deductible nonprofit charity.
Privacy policy
About Wikipedia
Disclaimers
if (window.runOnloadHook) runOnloadHook();
c
Programming in CUNIX System Calls and Subroutines using C.
A. D. Marshall 1994-2005
Substantially Updated March 1999
Next: Copyright
Search for Keywords in C Notes
Keyword Searcher
Download Postscript Version of Notes
Click Here to Download Course Notes. Local Students Only.
Algorithm Animations
Direct link to Java Algorithm Animations (C related)
C COURSEWARE
Lecture notes + integrated exercises, solutions and marking
Contents
The Common Desktop Environment
The front panel
The file manager
The application manager
The session manager
Other CDE desktop tools
Application development tools
Application integration
Windows and the Window Manager
The Root Menu
Exercises
C/C++ Program Compilation
Creating, Compiling and Running Your Program
Creating the program
Compilation
Running the program
The C Compilation Model
The Preprocessor
C Compiler
Assembler
Link Editor
Some Useful Compiler Options
Using Libraries
UNIX Library Functions
Finding Information about Library Functions
Lint -- A C program verifier
Exercises
C Basics
History of C
Characteristics of C
C Program Structure
Variables
Defining Global Variables
Printing Out and Inputting Variables
Constants
Arithmetic Operations
Comparison Operators
Logical Operators
Order of Precedence
Exercises
Conditionals
The if statement
The ? operator
The switch statement
Exercises
Looping and Iteration
The for statement
The while statement
The do-while statement
break and continue
Exercises
Arrays and Strings
Single and Multi-dimensional Arrays
Strings
Exercises
Functions
void functions
Functions and Arrays
Function Prototyping
Exercises
Further Data Types
Structures
Defining New Data Types
Unions
Coercion or Type-Casting
Enumerated Types
Static Variables
Exercises
Pointers
What is a Pointer?
Pointer and Functions
Pointers and Arrays
Arrays of Pointers
Multidimensional arrays and pointers
Static Initialisation of Pointer Arrays
Pointers and Structures
Common Pointer Pitfalls
Not assigning a pointer to memory address before using it
Illegal indirection
Exercise
Dynamic Memory Allocation and Dynamic Structures
Malloc, Sizeof, and Free
Calloc and Realloc
Linked Lists
Full Program: queue.c
Exercises
Advanced Pointer Topics
Pointers to Pointers
Command line input
Pointers to a Function
Exercises
Low Level Operators and Bit Fields
Bitwise Operators
Bit Fields
Bit Fields: Practical Example
A note of caution: Portability
Exercises
The C Preprocessor
#define
#undef
#include
#if -- Conditional inclusion
Preprocessor Compiler Control
Other Preprocessor Commands
Exercises
C, UNIX and Standard Libraries
Advantages of using UNIX with C
Using UNIX System Calls and Library Functions
Integer Functions, Random Number, String Conversion, Searching and Sorting:
Arithmetic Functions
Random Numbers
String Conversion
Searching and Sorting
Exercises
Mathematics:
Math Functions
Math Constants
Input and Output (I/O):stdio.h
Reporting Errors
perror()
errno
exit()
Streams
Predefined Streams
Redirection
Basic I/O
Formatted I/O
Printf
scanf
Files
Reading and writing files
sprintf and sscanf
Stream Status Enquiries
Low Level I/O
Exercises
String Handling:
Basic String Handling Functions
String Searching
Character conversions and testing: ctype.h
Memory Operations:
Exercises
File Access and Directory System Calls
Directory handling functions:
Scanning and Sorting Directories:,
File Manipulation Routines: unistd.h, sys/types.h, sys/stat.h
File Access
errno
File Status
File Manipulation:stdio.h, unistd.h
Creating Temporary FIles:
Exercises
Time Functions
Basic time functions
Example time applications
Example 1: Time (in seconds) to perform some computation
Example 2: Set a random number seed
Exercises
Process Control:,
Running UNIX Commands from C
execl()
fork()
wait()
exit()
Exerises
Interprocess Communication (IPC), Pipes
Piping in a C program:
popen() -- Formatted Piping
pipe() -- Low level Piping
Exercises
IPC:Interrupts and Signals:
Sending Signals -- kill(), raise()
Signal Handling -- signal()
sig_talk.c -- complete example program
Other signal functions
IPC:Message Queues:
Initialising the Message Queue
IPC Functions, Key Arguments, and Creation Flags:
Controlling message queues
Sending and Receiving Messages
POSIX Messages:
Example: Sending messages between two processes
message_send.c -- creating and sending to a simple message queue
message_rec.c -- receiving the above message
Some further example message queue programs
msgget.c: Simple Program to illustrate msget()
msgctl.cSample Program to Illustrate msgctl()
msgop.c: Sample Program to Illustrate msgsnd() and msgrcv()
Exercises
IPC:Semaphores
Initializing a Semaphore Set
Controlling Semaphores
Semaphore Operations
POSIX Semaphores:
semaphore.c: Illustration of simple semaphore passing
Some further example semaphore programs
semget.c: Illustrate the semget() function
semctl.c: Illustrate the semctl() function
semop() Sample Program to Illustrate semop()
Exercises
IPC:Shared Memory
Accessing a Shared Memory Segment
Controlling a Shared Memory Segment
Attaching and Detaching a Shared Memory Segment
Example two processes comunicating via shared memory: shm_server.c, shm_client.c
shm_server.c
shm_client.c
POSIX Shared Memory
Mapped memory
Address Spaces and Mapping
Coherence
Creating and Using Mappings
Other Memory Control Functions
Some further example shared memory programs
shmget.c:Sample Program to Illustrate shmget()
shmctl.c: Sample Program to Illustrate shmctl()
shmop.c: Sample Program to Illustrate shmat() and shmdt()
Exercises
IPC:Sockets
Socket Creation and Naming
Connecting Stream Sockets
Stream Data Transfer and Closing
Datagram sockets
Socket Options
Example Socket Programs:socket_server.c,socket_client
socket_server.c
socket_client.c
Exercises
Threads: Basic Theory and Libraries
Processes and Threads
Benefits of Threads vs Processes
Multithreading vs. Single threading
Some Example applications of threads
Thread Levels
User-Level Threads (ULT)
Kernel-Level Threads (KLT)
Combined ULT/KLT Approaches
Threads libraries
The POSIX Threads Library:libpthread,
Creating a (Default) Thread
Wait for Thread Termination
A Simple Threads Example
Detaching a Thread
Create a Key for Thread-Specific Data
Delete the Thread-Specific Data Key
Set the Thread-Specific Data Key
Get the Thread-Specific Data Key
Global and Private Thread-Specific Data Example
Getting the Thread Identifiers
Comparing Thread IDs
Initializing Threads
Yield Thread Execution
Set the Thread Priority
Get the Thread Priority
Send a Signal to a Thread
Access the Signal Mask of the Calling Thread
Terminate a Thread
Solaris Threads:
Unique Solaris Threads Functions
Suspend Thread Execution
Continue a Suspended Thread
Set Thread Concurrency Level
Readers/Writer Locks
Readers/Writer Lock Example
Similar Solaris Threads Functions
Create a Thread
Get the Thread Identifier
Yield Thread Execution
Signals and Solaris Threads
Terminating a Thread
Creating a Thread-Specific Data Key
Example Use of Thread Specific Data:Rethinking Global Variables
Compiling a Multithreaded Application
Preparing for Compilation
Debugging a Multithreaded Program
Further Threads Programming:Thread Attributes (POSIX)
Attributes
Initializing Thread Attributes
Destroying Thread Attributes
Thread's Detach State
Thread's Set Scope
Thread Scheduling Policy
Thread Inherited Scheduling Policy
Set Scheduling Parameters
Thread Stack Size
Building Your Own Thread Stack
Further Threads Programming:Synchronization
Mutual Exclusion Locks
Initializing a Mutex Attribute Object
Destroying a Mutex Attribute Object
The Scope of a Mutex
Initializing a Mutex
Locking a Mutex
Lock with a Nonblocking Mutex
Destroying a Mutex
Mutex Lock Code Examples
Mutex Lock Example
Using Locking Hierarchies: Avoiding Deadlock
Nested Locking with a Singly Linked List
Solaris Mutex Locks
Condition Variable Attributes
Initializing a Condition Variable Attribute
Destoying a Condition Variable Attribute
The Scope of a Condition Variable
Initializing a Condition Variable
Block on a Condition Variable
Destroying a Condition Variable State
Solaris Condition Variables
Threads and Semaphores
POSIX Semaphores
Basic Solaris Semaphore Functions
Thread programming examples
Using thr_create() and thr_join()
Arrays
Deadlock
Signal Handler
Interprocess Synchronization
The Producer / Consumer Problem
A Socket Server
Using Many Threads
Real-time Thread Example
POSIX Cancellation
Software Race Condition
Tgrep: Threadeds version of UNIX grep
Multithreaded Quicksort
Remote Procedure Calls (RPC)
What Is RPC
How RPC Works
RPC Application Development
Defining the Protocol
Defining Client and Server Application Code
Compliling and running the application
Overview of Interface Routines
Simplified Level Routine Function
Top Level Routines
Intermediate Level Routines
Expert Level Routines
Bottom Level Routines
The Programmer's Interface to RPC
Simplified Interface
Passing Arbitrary Data Types
Developing High Level RPC Applications
Defining the protocol
Sharing the data
The Server Side
The Client Side
Exercise
Protocol Compiling and Lower Level RPC Programming
What is rpcgen
An rpcgen Tutorial
Converting Local Procedures to Remote Procedures
Passing Complex Data Structures
Preprocessing Directives
cpp Directives
Compile-Time Flags
Client and Server Templates
Example rpcgen compile options/templates
Recommended Reading
Exercises
Writing Larger Programs
Header files
External variables and functions
Scope of externals
Advantages of Using Several Files
How to Divide a Program between Several Files
Organisation of Data in each File
The Make Utility
Make Programming
Creating a makefile
Make macros
Running Make
Program Listings
hello.c
printf.c
swap.c
args.c
arg.c
average.c
cio.c
factorial
power.c
ptr_arr.c
Modular Example
main.c
WriteMyString.c
header.h
Makefile
static.c
malloc.c
queue.c
bitcount.c
lowio.c
print.c
cdir.c
list.c
list_c.c
fork_eg.c
fork.c
signal.c
sig_talk.c
Piping
plot.c
plotter.c
externals.h
random.c
time.c
timer.c
Online Marking of C Programs --- CEILIDH
Ceilidh - On Line C Tutoring System
Why Use CEILIDH ?
Introduction
Using Ceilidh as a Student
The course and unit level
The exercise level
Interpreted language exercises
Question/answer exercises
The command line interface (TEXT CEILIDH ONLY)
Advantages of the command line interface
General points
Conclusions
How Ceilidh works, Ceilidh Course Notes, User Guides etc.
References
About this document ...
Dave Marshall 29/3/1999
A. D. Marshall 1994-2005
Substantially Updated March 1999
Next: Copyright
Search for Keywords in C Notes
Keyword Searcher
Download Postscript Version of Notes
Click Here to Download Course Notes. Local Students Only.
Algorithm Animations
Direct link to Java Algorithm Animations (C related)
C COURSEWARE
Lecture notes + integrated exercises, solutions and marking
Contents
The Common Desktop Environment
The front panel
The file manager
The application manager
The session manager
Other CDE desktop tools
Application development tools
Application integration
Windows and the Window Manager
The Root Menu
Exercises
C/C++ Program Compilation
Creating, Compiling and Running Your Program
Creating the program
Compilation
Running the program
The C Compilation Model
The Preprocessor
C Compiler
Assembler
Link Editor
Some Useful Compiler Options
Using Libraries
UNIX Library Functions
Finding Information about Library Functions
Lint -- A C program verifier
Exercises
C Basics
History of C
Characteristics of C
C Program Structure
Variables
Defining Global Variables
Printing Out and Inputting Variables
Constants
Arithmetic Operations
Comparison Operators
Logical Operators
Order of Precedence
Exercises
Conditionals
The if statement
The ? operator
The switch statement
Exercises
Looping and Iteration
The for statement
The while statement
The do-while statement
break and continue
Exercises
Arrays and Strings
Single and Multi-dimensional Arrays
Strings
Exercises
Functions
void functions
Functions and Arrays
Function Prototyping
Exercises
Further Data Types
Structures
Defining New Data Types
Unions
Coercion or Type-Casting
Enumerated Types
Static Variables
Exercises
Pointers
What is a Pointer?
Pointer and Functions
Pointers and Arrays
Arrays of Pointers
Multidimensional arrays and pointers
Static Initialisation of Pointer Arrays
Pointers and Structures
Common Pointer Pitfalls
Not assigning a pointer to memory address before using it
Illegal indirection
Exercise
Dynamic Memory Allocation and Dynamic Structures
Malloc, Sizeof, and Free
Calloc and Realloc
Linked Lists
Full Program: queue.c
Exercises
Advanced Pointer Topics
Pointers to Pointers
Command line input
Pointers to a Function
Exercises
Low Level Operators and Bit Fields
Bitwise Operators
Bit Fields
Bit Fields: Practical Example
A note of caution: Portability
Exercises
The C Preprocessor
#define
#undef
#include
#if -- Conditional inclusion
Preprocessor Compiler Control
Other Preprocessor Commands
Exercises
C, UNIX and Standard Libraries
Advantages of using UNIX with C
Using UNIX System Calls and Library Functions
Integer Functions, Random Number, String Conversion, Searching and Sorting:
Arithmetic Functions
Random Numbers
String Conversion
Searching and Sorting
Exercises
Mathematics:
Math Functions
Math Constants
Input and Output (I/O):stdio.h
Reporting Errors
perror()
errno
exit()
Streams
Predefined Streams
Redirection
Basic I/O
Formatted I/O
Printf
scanf
Files
Reading and writing files
sprintf and sscanf
Stream Status Enquiries
Low Level I/O
Exercises
String Handling:
Basic String Handling Functions
String Searching
Character conversions and testing: ctype.h
Memory Operations:
Exercises
File Access and Directory System Calls
Directory handling functions:
Scanning and Sorting Directories:
File Manipulation Routines: unistd.h, sys/types.h, sys/stat.h
File Access
errno
File Status
File Manipulation:stdio.h, unistd.h
Creating Temporary FIles:
Exercises
Time Functions
Basic time functions
Example time applications
Example 1: Time (in seconds) to perform some computation
Example 2: Set a random number seed
Exercises
Process Control:
Running UNIX Commands from C
execl()
fork()
wait()
exit()
Exerises
Interprocess Communication (IPC), Pipes
Piping in a C program:
popen() -- Formatted Piping
pipe() -- Low level Piping
Exercises
IPC:Interrupts and Signals:
Sending Signals -- kill(), raise()
Signal Handling -- signal()
sig_talk.c -- complete example program
Other signal functions
IPC:Message Queues:
Initialising the Message Queue
IPC Functions, Key Arguments, and Creation Flags:
Controlling message queues
Sending and Receiving Messages
POSIX Messages:
Example: Sending messages between two processes
message_send.c -- creating and sending to a simple message queue
message_rec.c -- receiving the above message
Some further example message queue programs
msgget.c: Simple Program to illustrate msget()
msgctl.cSample Program to Illustrate msgctl()
msgop.c: Sample Program to Illustrate msgsnd() and msgrcv()
Exercises
IPC:Semaphores
Initializing a Semaphore Set
Controlling Semaphores
Semaphore Operations
POSIX Semaphores:
semaphore.c: Illustration of simple semaphore passing
Some further example semaphore programs
semget.c: Illustrate the semget() function
semctl.c: Illustrate the semctl() function
semop() Sample Program to Illustrate semop()
Exercises
IPC:Shared Memory
Accessing a Shared Memory Segment
Controlling a Shared Memory Segment
Attaching and Detaching a Shared Memory Segment
Example two processes comunicating via shared memory: shm_server.c, shm_client.c
shm_server.c
shm_client.c
POSIX Shared Memory
Mapped memory
Address Spaces and Mapping
Coherence
Creating and Using Mappings
Other Memory Control Functions
Some further example shared memory programs
shmget.c:Sample Program to Illustrate shmget()
shmctl.c: Sample Program to Illustrate shmctl()
shmop.c: Sample Program to Illustrate shmat() and shmdt()
Exercises
IPC:Sockets
Socket Creation and Naming
Connecting Stream Sockets
Stream Data Transfer and Closing
Datagram sockets
Socket Options
Example Socket Programs:socket_server.c,socket_client
socket_server.c
socket_client.c
Exercises
Threads: Basic Theory and Libraries
Processes and Threads
Benefits of Threads vs Processes
Multithreading vs. Single threading
Some Example applications of threads
Thread Levels
User-Level Threads (ULT)
Kernel-Level Threads (KLT)
Combined ULT/KLT Approaches
Threads libraries
The POSIX Threads Library:libpthread,
Creating a (Default) Thread
Wait for Thread Termination
A Simple Threads Example
Detaching a Thread
Create a Key for Thread-Specific Data
Delete the Thread-Specific Data Key
Set the Thread-Specific Data Key
Get the Thread-Specific Data Key
Global and Private Thread-Specific Data Example
Getting the Thread Identifiers
Comparing Thread IDs
Initializing Threads
Yield Thread Execution
Set the Thread Priority
Get the Thread Priority
Send a Signal to a Thread
Access the Signal Mask of the Calling Thread
Terminate a Thread
Solaris Threads:
Unique Solaris Threads Functions
Suspend Thread Execution
Continue a Suspended Thread
Set Thread Concurrency Level
Readers/Writer Locks
Readers/Writer Lock Example
Similar Solaris Threads Functions
Create a Thread
Get the Thread Identifier
Yield Thread Execution
Signals and Solaris Threads
Terminating a Thread
Creating a Thread-Specific Data Key
Example Use of Thread Specific Data:Rethinking Global Variables
Compiling a Multithreaded Application
Preparing for Compilation
Debugging a Multithreaded Program
Further Threads Programming:Thread Attributes (POSIX)
Attributes
Initializing Thread Attributes
Destroying Thread Attributes
Thread's Detach State
Thread's Set Scope
Thread Scheduling Policy
Thread Inherited Scheduling Policy
Set Scheduling Parameters
Thread Stack Size
Building Your Own Thread Stack
Further Threads Programming:Synchronization
Mutual Exclusion Locks
Initializing a Mutex Attribute Object
Destroying a Mutex Attribute Object
The Scope of a Mutex
Initializing a Mutex
Locking a Mutex
Lock with a Nonblocking Mutex
Destroying a Mutex
Mutex Lock Code Examples
Mutex Lock Example
Using Locking Hierarchies: Avoiding Deadlock
Nested Locking with a Singly Linked List
Solaris Mutex Locks
Condition Variable Attributes
Initializing a Condition Variable Attribute
Destoying a Condition Variable Attribute
The Scope of a Condition Variable
Initializing a Condition Variable
Block on a Condition Variable
Destroying a Condition Variable State
Solaris Condition Variables
Threads and Semaphores
POSIX Semaphores
Basic Solaris Semaphore Functions
Thread programming examples
Using thr_create() and thr_join()
Arrays
Deadlock
Signal Handler
Interprocess Synchronization
The Producer / Consumer Problem
A Socket Server
Using Many Threads
Real-time Thread Example
POSIX Cancellation
Software Race Condition
Tgrep: Threadeds version of UNIX grep
Multithreaded Quicksort
Remote Procedure Calls (RPC)
What Is RPC
How RPC Works
RPC Application Development
Defining the Protocol
Defining Client and Server Application Code
Compliling and running the application
Overview of Interface Routines
Simplified Level Routine Function
Top Level Routines
Intermediate Level Routines
Expert Level Routines
Bottom Level Routines
The Programmer's Interface to RPC
Simplified Interface
Passing Arbitrary Data Types
Developing High Level RPC Applications
Defining the protocol
Sharing the data
The Server Side
The Client Side
Exercise
Protocol Compiling and Lower Level RPC Programming
What is rpcgen
An rpcgen Tutorial
Converting Local Procedures to Remote Procedures
Passing Complex Data Structures
Preprocessing Directives
cpp Directives
Compile-Time Flags
Client and Server Templates
Example rpcgen compile options/templates
Recommended Reading
Exercises
Writing Larger Programs
Header files
External variables and functions
Scope of externals
Advantages of Using Several Files
How to Divide a Program between Several Files
Organisation of Data in each File
The Make Utility
Make Programming
Creating a makefile
Make macros
Running Make
Program Listings
hello.c
printf.c
swap.c
args.c
arg.c
average.c
cio.c
factorial
power.c
ptr_arr.c
Modular Example
main.c
WriteMyString.c
header.h
Makefile
static.c
malloc.c
queue.c
bitcount.c
lowio.c
print.c
cdir.c
list.c
list_c.c
fork_eg.c
fork.c
signal.c
sig_talk.c
Piping
plot.c
plotter.c
externals.h
random.c
time.c
timer.c
Online Marking of C Programs --- CEILIDH
Ceilidh - On Line C Tutoring System
Why Use CEILIDH ?
Introduction
Using Ceilidh as a Student
The course and unit level
The exercise level
Interpreted language exercises
Question/answer exercises
The command line interface (TEXT CEILIDH ONLY)
Advantages of the command line interface
General points
Conclusions
How Ceilidh works, Ceilidh Course Notes, User Guides etc.
References
About this document ...
Dave Marshall 29/3/1999
c++
homepage C++links FAQ technical FAQ glossary compilers publications C++TRs TC++PL D&E bio interviews applications TAMU AT&T Research
The C++ Programming Language
Modified January 24, 2008
Advice of the day(from TC++PL)16.4[18] When necessary, use reserve() to make performance predictable; sec16.3.8.
FAQ of the dayWhy is the language called C++?
Article of the dayAbstraction and the C++ machine model. ICESS'04. December 2004. C++ is a general purpose programming language with a bias towards systems programming that
is a better C
supports data abstraction
supports object-oriented programming
supports generic programming.
I (Bjarne Stroustrup) am the designer and original implementor of C++. You can find the language, the techniques for using it, and the techniques for implementing it described in my books, my papers, in hundreds of books by others, and thousands of papers by others. There are far too many to list. Try a bookstore or a library. Answers to many questions about C++ can be found in
my FAQ,
my C++ Style and Technique FAQ
my C++ glossary, and
some interviews that I have given.
C++ has been standardized by ANSI (The American National Standards Institute), BSI (The British Standards Institute), DIN (The German national standards organization), several other national standards bodies, and ISO (The International Standards Organization). You can find a somewhat out-of-date draft standard here. The ISO standard has been finalized and adopted by unanimous vote Nov 14, 1997. It was ratified in August 1998 by a 22-0 vote. The standard is ISO/IEC 14882; it is available for downloading at the National Committee for Information Technology Standards Electronic Store. The cost is (as I write this) US$18.00 payable on-line via credit card. The downloaded document is in PDF form, 2794KB total size. The ISO C++ standards committee maintains an official site with information about the current state of the standards effort. ISO has published a revised standard (with relatively minor clarifications and resolutions known as Corrigenda 1) as ISO/IEC 14882:2003. It is available as a book (on paper): "The C++ Standard", published by Wiley, ISBN 0 470 84674-7. Here are some more standard-related links
a press release about C++ and its standard intended for non-programmers
a press release about the availability of the standard
My book The Design and Evolution of C++ describes the standards process and many of the design decisions made
My book The C++ Programming Language (Special Edition) describes C++ as defined by the ISO standard.
The standard committee's technical report on implementation issues and programming techniques related to performance. This should be of particular interest to programmers of embedded systems.
The standard committee's technical report on library extensions that are likely to become part of C++0x (possibly after some revisions).
My foreword to the printed version of the C++ standard.
An 2004 evolution working group wish list; that is, the list of suggested additions to the C++ core language - note that only a fraction of these will be accepted into C++0x. Here is the current state of the evolution proposals.
A standard library wishlist maintained by Matt Austern.
A call for proposals for further standard libraries.
Discussions about C++ and its use can be found in most forums covering programming. The usenet groups comp.lang.c++.moderated and alt.comp.lang.learn.c-c++ are good examples. These groups can be accessed in various ways including Google Groups (sort by date).
More links:
A list of interesting C++ applications. I welcome suggestions for additions.
An incomplete list of C++ compilers.
A list of available C++ libraries known as the C++ libraries FAQ.
Boost.org: A repository for libraries meant to work well with the C++ standard library.
The Computer History Museum's site for early C++ sources (code, documentation, papers, etc.). If you want easier to digest information about C++'s past, read My paper about C++'s design and early years or the more comprenensive book The Design and Evolution of C++.
Doug Schmidt's site with information about a lot of things including the ACE framework and the TAO real-time ORB.
High-performance numerical libraries provide excellent tests for interesting new programming techniques: The Object-Oriented Numerics Page is a list of libraries, projects, and mailing lists. For example: POOMA from LANL, Blitz++ from U. of Waterloo, MTL from Indiana Univarsity, and ROOT from CERN. These libraries, and many more, are available for downloading.
Hans-J. Boehm's site for C and C++ garbage collection and a couple of sites offering collectors based on his work (University of Tokyo, geodesic.com).
C++ Standards FAQ containing many valuable links (including some to implementations of the standard library).
Several test suites are available for C++ (try looking for ``C++ test suite'' using your favorite search engine. For example, Plumhall and Perennial sell extensive commercial standards conformance suites.
An old, but unfortunately not completely irrelevant, net posting answering some unfair criticisms of C++.
A net posting about how to approach learning C++.
An ASCII version of the slides I used for my keynote at the Spring'99 Embedded Systems Conference.
For a look at how ISO C++ can be used for serious embedded systems programming, see
JSF++: The JSF air vehicle C++ coding standards
The ISO C++ committee's TR on performance
A confence paper on the basic ideas of using C++ in embedded systems.
Marshall Cline's C++ FAQ.
The learn.c-c++ newsgroup FAQ presents much information of use for C and/or C++ novices.
STL (Standard Template Library) FAQ.
SGI's implementation of the STL.
Dinkumware's online standard library reference.
Rogue Wave's online documentation of an commentary on the standard library.
An extensive collection of book reviews can be found on the ACCU (The Association of C and C++ Users) site.
Sean Corfield's site summarizing the changes from ARM C++ to Standard C++.
David Tribble's paper listing incompatibilities between C++ and C99.
A list of resources for people learning C++ from The Cambridge University Engineering Department.
A list of C++ resources such as libraries, implementations, books, FAQs, other C++ pages, etc..
A large (18,000+) collection of links to information on OO, OOP languages, etc. called Cetus.
A page listing numerous GUI toolkits.
A list of major industry applications and tools with evolution paths by Vincent Lextrait.
A catalog of C++ links from Forschungszentrum Julich.
Addison-Wesley Longman's links to C++ and OOP resources.
Greg Comeau's C++ related site in New York.
Brad Appleton's collection of C++ and OOP links.
The C++ section of the open directory project.
Herb Sutter's collection of articles focussing on how to learn and use Standard C++ in a modern style.
Kevlin Henneys' collection of thought provoking and useful articles about good C++ design and style.
Artima's C++ source has a collection of C++ articles, columns, etc.
Danny Kalev's C++ articles and news items on informIT.com.
Videos:
A C++0x talk given at University of Waterloo. Google, NYC. August 2007.
A talk on C++0x initializer lists given at Google, Mountainview. February 2007.
Several videos, audio recordings, and transcripts of talks, panels, and interviews from Dr. Dobb's Technetcast archieves.
Dennis Ritchie's homepage containing lots of interesting information about the history of C, Unix, and (AT&T) Bell Lab's computer science research center (where C++ was born).
The Computer History Museum's Software Preservation Group's colection of C++ sources currently focusing on the early years. Contributions are most welcome (see the site for details). Some of these sites are commercial. They are listed because I found some interesting information there, not because I wanted to endorse a product. All the major software suppliers have C++ related information on their sites.
homepage C++links FAQ technical FAQ glossary compilers publications C++TRs TC++PL D&E bio interviews applications TAMU AT&T Research
The C++ Programming Language
Modified January 24, 2008
Advice of the day(from TC++PL)16.4[18] When necessary, use reserve() to make performance predictable; sec16.3.8.
FAQ of the dayWhy is the language called C++?
Article of the dayAbstraction and the C++ machine model. ICESS'04. December 2004. C++ is a general purpose programming language with a bias towards systems programming that
is a better C
supports data abstraction
supports object-oriented programming
supports generic programming.
I (Bjarne Stroustrup) am the designer and original implementor of C++. You can find the language, the techniques for using it, and the techniques for implementing it described in my books, my papers, in hundreds of books by others, and thousands of papers by others. There are far too many to list. Try a bookstore or a library. Answers to many questions about C++ can be found in
my FAQ,
my C++ Style and Technique FAQ
my C++ glossary, and
some interviews that I have given.
C++ has been standardized by ANSI (The American National Standards Institute), BSI (The British Standards Institute), DIN (The German national standards organization), several other national standards bodies, and ISO (The International Standards Organization). You can find a somewhat out-of-date draft standard here. The ISO standard has been finalized and adopted by unanimous vote Nov 14, 1997. It was ratified in August 1998 by a 22-0 vote. The standard is ISO/IEC 14882; it is available for downloading at the National Committee for Information Technology Standards Electronic Store. The cost is (as I write this) US$18.00 payable on-line via credit card. The downloaded document is in PDF form, 2794KB total size. The ISO C++ standards committee maintains an official site with information about the current state of the standards effort. ISO has published a revised standard (with relatively minor clarifications and resolutions known as Corrigenda 1) as ISO/IEC 14882:2003. It is available as a book (on paper): "The C++ Standard", published by Wiley, ISBN 0 470 84674-7. Here are some more standard-related links
a press release about C++ and its standard intended for non-programmers
a press release about the availability of the standard
My book The Design and Evolution of C++ describes the standards process and many of the design decisions made
My book The C++ Programming Language (Special Edition) describes C++ as defined by the ISO standard.
The standard committee's technical report on implementation issues and programming techniques related to performance. This should be of particular interest to programmers of embedded systems.
The standard committee's technical report on library extensions that are likely to become part of C++0x (possibly after some revisions).
My foreword to the printed version of the C++ standard.
An 2004 evolution working group wish list; that is, the list of suggested additions to the C++ core language - note that only a fraction of these will be accepted into C++0x. Here is the current state of the evolution proposals.
A standard library wishlist maintained by Matt Austern.
A call for proposals for further standard libraries.
Discussions about C++ and its use can be found in most forums covering programming. The usenet groups comp.lang.c++.moderated and alt.comp.lang.learn.c-c++ are good examples. These groups can be accessed in various ways including Google Groups (sort by date).
More links:
A list of interesting C++ applications. I welcome suggestions for additions.
An incomplete list of C++ compilers.
A list of available C++ libraries known as the C++ libraries FAQ.
Boost.org: A repository for libraries meant to work well with the C++ standard library.
The Computer History Museum's site for early C++ sources (code, documentation, papers, etc.). If you want easier to digest information about C++'s past, read My paper about C++'s design and early years or the more comprenensive book The Design and Evolution of C++.
Doug Schmidt's site with information about a lot of things including the ACE framework and the TAO real-time ORB.
High-performance numerical libraries provide excellent tests for interesting new programming techniques: The Object-Oriented Numerics Page is a list of libraries, projects, and mailing lists. For example: POOMA from LANL, Blitz++ from U. of Waterloo, MTL from Indiana Univarsity, and ROOT from CERN. These libraries, and many more, are available for downloading.
Hans-J. Boehm's site for C and C++ garbage collection and a couple of sites offering collectors based on his work (University of Tokyo, geodesic.com).
C++ Standards FAQ containing many valuable links (including some to implementations of the standard library).
Several test suites are available for C++ (try looking for ``C++ test suite'' using your favorite search engine. For example, Plumhall and Perennial sell extensive commercial standards conformance suites.
An old, but unfortunately not completely irrelevant, net posting answering some unfair criticisms of C++.
A net posting about how to approach learning C++.
An ASCII version of the slides I used for my keynote at the Spring'99 Embedded Systems Conference.
For a look at how ISO C++ can be used for serious embedded systems programming, see
JSF++: The JSF air vehicle C++ coding standards
The ISO C++ committee's TR on performance
A confence paper on the basic ideas of using C++ in embedded systems.
Marshall Cline's C++ FAQ.
The learn.c-c++ newsgroup FAQ presents much information of use for C and/or C++ novices.
STL (Standard Template Library) FAQ.
SGI's implementation of the STL.
Dinkumware's online standard library reference.
Rogue Wave's online documentation of an commentary on the standard library.
An extensive collection of book reviews can be found on the ACCU (The Association of C and C++ Users) site.
Sean Corfield's site summarizing the changes from ARM C++ to Standard C++.
David Tribble's paper listing incompatibilities between C++ and C99.
A list of resources for people learning C++ from The Cambridge University Engineering Department.
A list of C++ resources such as libraries, implementations, books, FAQs, other C++ pages, etc..
A large (18,000+) collection of links to information on OO, OOP languages, etc. called Cetus.
A page listing numerous GUI toolkits.
A list of major industry applications and tools with evolution paths by Vincent Lextrait.
A catalog of C++ links from Forschungszentrum Julich.
Addison-Wesley Longman's links to C++ and OOP resources.
Greg Comeau's C++ related site in New York.
Brad Appleton's collection of C++ and OOP links.
The C++ section of the open directory project.
Herb Sutter's collection of articles focussing on how to learn and use Standard C++ in a modern style.
Kevlin Henneys' collection of thought provoking and useful articles about good C++ design and style.
Artima's C++ source has a collection of C++ articles, columns, etc.
Danny Kalev's C++ articles and news items on informIT.com.
Videos:
A C++0x talk given at University of Waterloo. Google, NYC. August 2007.
A talk on C++0x initializer lists given at Google, Mountainview. February 2007.
Several videos, audio recordings, and transcripts of talks, panels, and interviews from Dr. Dobb's Technetcast archieves.
Dennis Ritchie's homepage containing lots of interesting information about the history of C, Unix, and (AT&T) Bell Lab's computer science research center (where C++ was born).
The Computer History Museum's Software Preservation Group's colection of C++ sources currently focusing on the early years. Contributions are most welcome (see the site for details). Some of these sites are commercial. They are listed because I found some interesting information there, not because I wanted to endorse a product. All the major software suppliers have C++ related information on their sites.
homepage C++links FAQ technical FAQ glossary compilers publications C++TRs TC++PL D&E bio interviews applications TAMU AT&T Research
java
Skip to Content Sun Java Solaris Communities My SDN Account Join SDN
Sun.com
About Sun
Downloads
Products
Solutions
Support
Training
Java for your computer
Stay up to date with the latest versions of Java for your desktop computer.
Free and Open Source Java
Get your own copy of the underlying software code for the Java language.
Download the latest JDK
The basic developer kit for Java developers.
Download the Java EE SDK
The SDK supports Java SE 6 and the latest Java EE 5 technologies.
Download NetBeans IDE
Get the award-winning, open-source tool suite for developing Java applications.
Java Developer Resources
Visit java.sun.com for everything you need to know about the Java technology.
Java Developer Tools
See and download all software tools available from Sun.
Java Standard Edition
For developing and deploying Java applications for the desktop, servers, embedded, and real-time environments.
Java Enterprise Edition
For enterprise, server-side Java applications.
Java Micro Edition
For Java applications running on mobile devices.
Java Training
Sharpen your Java skills with courses from the source.
Java Support
Get dedicated help from Sun including technical assistance, product support, and support for deployed Java applications.
Solaris
Download the most advanced operating system in the world
Sun Studio
Optimizing compilers and tools for C/C++/Fortran application development
Solaris Developer Center
Explore the resources and community available to the Solaris developer.
Sun Developer Services
Get technical assistance, product support, training, and other services from the source.
BigAdmin
A community site with Solaris system administration information, hardware compatibility, a script library, and other resources for administrators of Sun products.
OpenSolaris
Join the open-source community for collaboration and conversation around the OpenSolaris technology.
OpenJDK
The place to collaborate on the open-source JDK, an implementation of the Java Platform, Standard Edition specification.
Mobile & Embedded
The Mobile & Embedded Community enables and empowers developers to collaborate and innovate, driving the evolution and adoption of the Java(TM) Platform, Micro Edition (Java ME) for mobile and embedded devices.
GlassFish
The GlassFish community is building free, open source, production-quality, enterprise software.
NetBeans
You have the opportunity to submit bugs and feature requests in IssueZilla, submit news for the NetBeans Community, and contribute code or even create a project of your own. Welcome to the team!
OpenSolaris
The OpenSolaris source code is already cutting edge, but innovation happens everywhere, so we welcome your involvement.
OpenSPARC
OpenSPARC.net is the genesis of a vision to create a larger community where open conversations and collaborative development projects spawn dramatic innovations around chip design.
OpenJFX
Project OpenJFX is a community for sharing early versions of the JavaFX Script language and for collaborating on its development.
java.net
A gathering place for Java technology enthusiasts and existing communities across industries, platforms, and interest groups.
Sun Student Developers
The SDN Academic Developer Program offers you ready access to tools, resources, and student communities.
Java Community Process
The JCP gives you a chance to both have your own work become an official component of the Java platform, and to offer suggestions for improving and growing the technology.
Update My Profile
Join SDN Now
Why Join
Becoming an Sun Developer Network (SDN) member makes you part of a vibrant worldwide community of developers, and gives you access to cool stuff and exclusive offers.
» search tips
APIs
Java SE
Java EE
Java ME
Solaris
Sun Studio Compilers & Tools
Web Services
Java Card
See All »
Downloads
Early Access
Java SE
Java EE
Java ME
JavaFX
Solaris
NetBeans
Sun Studio Compilers & Tools
MySQL
See All »
Products
Java SE
Java EE
Java ME
JavaFX
Scripting
Solaris
Sun Studio Compilers & Tools
NetBeans IDE
Mobility
MySQL
Java DB
See All »
Support
Big Admin
Developer Services
Forums
See All »
Training
Certification
Developer Training
See All »
Participate
Forums
Blogs
SDN Share
Wikis
Java User Groups
Newsletters
See All »
Developers Home > Products & Technologies >
Java.sun.com
The Source for Java Developers
Featured Content
Watch the Video
Watch Now
March 11, 2008
The Update Center: Running the NetBeans IDE on the Asus EEE PCThink that the $299 Asus EEE PC can't run the Java or NetBeans platforms? You might be surprised. Here are instructions for kick-starting your Java development on what could be one of the most inexpensive laptops ever.
February 26, 2008Sun and MySQL: How It Stacks Up for DevelopersMySQL, the world's most popular open-source database, fills an important niche in Sun's software stack. With Sun's reach and resources, MySQL is poised for even wider adoption.
February 26, 2008 -->Using MySQL With JavaHere's the place to find documentation, tutorials, forums, and more on using MySQL with Java technology.
» See All Articles » News and Updates » Videos
Developer Spotlight
Watch the Video
Watch Now
Deep Dive: JXTA on MIDPSDN staff writer Ed Ort interviews JXTA project architect Mohamed Abdelaziz. Abdelaziz demonstrates how JXTA for MIDP 2.0 allows handheld devices to participate as first-class devices in a JXTA network.
From Java Platform Improvements to Better Teaching: A Conversation With Java Champion Cay HorstmannJava Champion Cay Horstmann, a computer science professor and author of noted books on Java programming, discusses needed platform improvements, developer challenges, and ways to inspire students.
Student DevelopersWhere can you find hot technologies, open-source communities, and job opportunities? Sun is looking for students who are ready to innovate and create the future. Learn More
Duke's Choice AwardsWe are accepting nominations for the sixth edition of the popular Duke's Choice Awards. Winners will be recognized at the 2008 JavaOne Conference. Submit entries by March 14.
Connect and Participate With GlassFishTry GlassFish for a chance to win an iPhone. This sweepstakes ends on March 23, 2008.Submit your entry today.
Java Learning and Certification
New Java Enterprise Architect CertificationThe much anticipated update to the Java Enterprise Architect Certification is now available. Achieving this advanced and well respected certification can help get you to the next level in your career. Learn more
Join the Sun Developer Network
-->
» New to Java » Tutorials » Certification » Training » See All
From the Blogosphere
James Gosling on ClosuresDo closures belong in the Java platform?
Introducing the GlassFish Awards Program (GAP)Help grow the GlassFish community -- and earn some of the $175,000 in prizes for your contributions.
» Blogs » Blogs.sun.com » Java.net Blogs
Participate
Get Early Access to the Next Java SE 6 UpdateDownload Java SE 6 Update N, formerly known as the Consumer JRE, and provide feedback on these exciting features: Direct3D, Java Quick Starter, Nimbus, and Deployment Toolkit. Get the RSS feed.
Participate with SDN Share:SDN Share is the place to share code and technical tips. Vote and comment on the latest posts from your peers.
Recent Posts:
Change Text Color in a Game for Flashing
A Very Simple Way to Skip Part of Code Without Using Comment Symbols
-->
Sun Open Sources Java Platform ImplementationsGet involved! New Communities:
OpenJDK
Mobile & Embedded
GlassFish
OpenJFX
» Forums » Newsletters and Tips » Ask the Experts » User Groups
» Bug Database --> » See All
-->
Popular Downloads:Java SEJava EE 5 SDKJava MENetBeans IDEMySQLWeb ServicesSee All
Technologies:Java SEJava EEJava MEJavaFXWeb ServicesSee All
Resources:Code Samples & AppsAPIsDocumentationTutorialsVideosTimezone UpdatesStudent DevelopersDeveloper TrainingBug DatabaseJava BlueprintsSolaris C/C++/Fortran Compilers
");
//-->
2008 JavaOne Conference
Register by April 7 and Save $200.00!
Join the Java Community for the 13th annual JavaOne conference May 6–9, 2008, in San Francisco.
»
Register Now
document.context='YTowOnt9';
Sun Tech Days
Get practical information, examples of real-world solutions, and hands-on training.
» Johannesburg, South Africa, Mar. 11-13
» St. Petersburg, Russia, Apr. 2-4
» More Tech Days
Communities:
OpenJDK
Mobile & Embedded
GlassFish
OpenJFX
NetBeans
java.net
Java Community Process
SDN Share
Related Resources:
Open-Source Java Project
Web Developer Resource Center
java.com
zones = 5;
randomZone = Math.floor(Math.random() * zones) + 1;
switch (randomZone){
case 1:
if (!document.phpAds_used) document.phpAds_used = ',';
phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
document.write ("");
break;
case 2:
if (!document.phpAds_used) document.phpAds_used = ',';
phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
document.write ("");
break;
case 3:
if (!document.phpAds_used) document.phpAds_used = ',';
phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
document.write ("");
break;
case 4:
if (!document.phpAds_used) document.phpAds_used = ',';
phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
document.write ("");
break;
case 5:
if (!document.phpAds_used) document.phpAds_used = ',';
phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
document.write ("");
break;
default:
break;
}
Connect and Participate
Try GlassFish for a chance to win an iPhone!
» Participate Now
document.context='YToyOntpOjA7YToxOntzOjI6IiE9IjtzOjEzOiJiYW5uZXJpZDoyNDg4Ijt9aToxO2E6MTp7czoyOiIhPSI7czoxNDoiY2FtcGFpZ25pZDo5OTkiO319';
zones = 5;
randomZone = Math.floor(Math.random() * zones) + 1;
switch (randomZone){
case 1:
if (!document.phpAds_used) document.phpAds_used = ',';
phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
document.write ("");
break;
case 2:
if (!document.phpAds_used) document.phpAds_used = ',';
phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
document.write ("");
break;
case 3:
if (!document.phpAds_used) document.phpAds_used = ',';
phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
document.write ("");
break;
case 4:
if (!document.phpAds_used) document.phpAds_used = ',';
phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
document.write ("");
break;
case 5:
if (!document.phpAds_used) document.phpAds_used = ',';
phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
document.write ("");
break;
default:
break;
}
=0)document.write(unescape('%3C')+'\!-'+'-')
//-->
About Sun About This Site Newsletters Contact Us EmploymentHow to Buy Licensing Terms of Use Privacy Trademarks Copyright 1994-2008Sun Microsystems, Inc.
A Sun Developer Network Site
Unless otherwise licensed, code in all technical manuals herein (including articles, FAQs, samples) is provided under this License. Sun Developer RSS Feeds
printmenus();
Subscribe to:
Posts (Atom)