Download presentation
Presentation is loading. Please wait.
Published byAron Buck Richards Modified over 9 years ago
1
COMPSCI 174- Introduction to C++ Class hour Section 01: MWF 9:55am – 10:45am. Hyer Hall 210
2
Self-Introduction Graduated from the University of Connecticut (05 Class), Ph.D in Computer Science and Engineering Bachelor of Science from Hanoi University of Technology (86-91) Master of Computer Science from UW-Milwaukee (96-99)
3
Contact information nguyenh@uww.edu McGraw 106 Office Hours: 8:45-9:45am, 11- noon MWF or by appointment 262 472 5170
4
Course Objectives Given a simple real-world problem, students will be able to develop C++ programs to gather input data, solve the problem using fundamental control structures and data structures such as arrays and structs, and display results. Given a real world problem, students will be able to develop a multiple function C++ program solution
5
Course Objectives Given a simple real-world problem, students will be able to develop C++ programs to gather input data, solve the problem using fundamental control structures and data structures such as arrays and structs, and display results. Given a real world problem, students will be able to develop a multiple function C++ program solution
6
Textbook/Technology requirement Textbook: “C++ How to Program” by Paul J. Deitel, Seven Edition (available in TextBook rental) Software: Cygwin (GNU C++ running on simulated LINUX platform). Please refer to additional document (posted in D2L) on how to install cygwin in your PC. Textpad: download at http://www.textpad.com/download/index.html#downloads http://www.textpad.com/download/index.html#downloads
7
Course detail - Topics Design and implement a simple C++ program Using mostly structure features of C++ Understanding of algorithm Fundamentals of C++ language & program Specific Applications
8
Course detail - Evaluation GRADABLEPOINTS Labs140 HW Assignment60 Exam 1150 Exam 2150 Project 1100 Project 2100 Project 3100 Final Exam200 Total1000
9
Guidance Notes on Plagiarism take and use another person’s (code, documentation) as one’s own How to avoid plagiarism: –Implement your OWN code. –Write your OWN documentation –Give proper acknowledgements (citations, open resources) to any significant copy of coding from open sources. The acknowledgement should be in the comments of your program.
10
Introduction to C++
11
Lesson plan History & Novelty of C++ Lab 1
12
History High-level programming language Low level programming language: CPU instruction sets. High level programming languages: Compiled (C/C++, Pascal) and interpreted language (Basic) Procedural (Pascal, C) and object oriented language (C++, Java)
13
History of C++ C++ is standardized in the United States through the American National Standards Institute (ANSI) and worldwide through the efforts of the International Organization for Standardization (ISO). C++ evolved from C, which evolved from two previous programming languages, BCPL and B. BCPL was developed in 1967 by Martin Richards as a language for writing operating systems software and compilers for operating systems.
14
History of C++ Ken Thompson modeled many features in B after their counterparts in BCPL and used B to create early versions of the UNIX operating system at Bell Laboratories in 1970. The C language was evolved from B by Dennis Ritchie at Bell Laboratories. C initially became widely known as the development language of the UNIX operating system. Today, most operating systems are written in C and/or C++. C is available for most computers and is hardware independent. It’s possible to write C programs that are portable to most computers.
15
History of C++ C++, an extension of C, was developed by Bjarne Stroustrup in the early 1980s at Bell Laboratories. C++ provides capabilities for object-oriented programming. Objects are essentially reusable software components that model items in the real world. Modular, object-oriented design and implementation makes programmers much more productive than can previous popular programming techniques. Object-oriented programs are easier to understand, correct and modify.
16
C++ standard library C++ programs consist of pieces called classes and functions. Most C++ programmers take advantage of the rich collections of classes and functions in the C++ Standard Library. Two parts to learning the C++ “world.” –The C++ language itself, and –How to use the classes and functions in the C++ Standard Library. Many special-purpose class libraries are supplied by independent software vendors.
17
Typical C++ Development Environment C++ systems generally consist of three parts: a program development environment, the language and the C++ Standard Library. C++ programs typically go through six phases: edit, preprocess, compile, link, load and execute. ©1992-2010 by Pearson Education, Inc. All Rights Reserved.
20
Typical C++ Development Environment Phase 1 consists of editing a file with an editor program (normally known simply as an editor). –You type a C++ program (typically referred to as source code) using the editor, make corrections and save the program. –C++ source code filenames often end with the.cpp,.cxx,.cc or.C extensions (note that C is in uppercase) which indicate that a file contains C++ source code. –Two editors widely used on UNIX systems are vi and emacs, nano. –C++ software packages such as Microsoft Visual C++ ( msdn.microsoft.com/vstudio/express/visua lc/default.aspx ) have editors integrated into the programming environment. ©1992-2010 by Pearson Education, Inc. All Rights Reserved.
21
Typical C++ Development Environment In phase 2, you give the command to compile the program. In a C++ system, a preprocessor program executes automatically before the compiler’s translation phase begins. The C++ preprocessor obeys commands called preprocessor directives, which indicate that certain manipulations are to be performed on the program before compilation. These manipulations usually include other text files to be compiled, and perform various text replacements. The most common preprocessor directives are discussed in the early chapters; a detailed discussion of preprocessor features appears in Appendix E, Preprocessor. In phase 3, the compiler translates the C++ program into machine-language code (also referred to as object code).
22
Typical C++ Development Environment Phase 4 is called linking. The object code produced by the C++ compiler typically contains “holes” due to missing parts, such as references to functions from standard libraries. A linker links the object code with the code for the missing functions to produce an executable program. ©1992-2010 by Pearson Education, Inc. All Rights Reserved.
23
Typical C++ Development Environment (cont.) Phase 5 is called loading. Before a program can be executed, it must first be placed in memory. This is done by the loader, which takes the executable image from disk and transfers it to memory. Additional components from shared libraries that support the program are also loaded. Finally, in Phase 6, the computer, under the control of its CPU, executes the program one instruction at a time. ©1992-2010 by Pearson Education, Inc. All Rights Reserved.
24
Typical C++ Development Environment (cont.) Programs do not always work on the first try. Each of the preceding phases can fail because of various errors that we discuss throughout the book. If this occurs, you’d have to return to the edit phase, make the necessary corrections and proceed through the remaining phases again to determine that the corrections fix the problem(s). ©1992-2010 by Pearson Education, Inc. All Rights Reserved.
25
Typical C++ Development Environment Most programs in C++ input and/or output data. Certain C++ functions take their input from cin (the standard input stream; pronounced “see-in”), which is normally the keyboard, but cin can be redirected to another device. Data is often output to cout (the standard output stream; pronounced “see-out”), which is normally the computer screen, but cout can be redirected to another device. When we say that a program prints a result, we normally mean that the result is displayed on a screen. –Data may be output to other devices, such as disks and hardcopy printers. There is also a standard error stream referred to as cerr that is used for displaying error messages.
26
Lab 1
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.