Students in CSCI 241 should check this web site frequently.
1/5/2021: For students who want debugging help via email: In order to properly debug a program, we will need your code, not just a screenshot of the error message you're getting. That means ALL OF YOUR CODE, not just the short section where you think the problem might be located. We will often need to compile, link, and run your program to find all of your errors, particularly runtime errors.
|Instructor||Kurt McMahonemail@example.com||TTh 1:30 p.m. - 3:30 p.m.
and by appointment
|Teaching Assistant||Ariz Ansari||Z1885929@students.niu.edu||M 9:00 a.m. - noon
TTh 9:00 a.m. - 10:30 a.m.
|Teaching Assistant||Saurav Mukhopadhyay||Z1722452@students.niu.edu||WF 9:00 a.m. - noon|
|Teaching Assistant||Mohammed Mukhtar Ali||Z1888638@students.niu.edu||M noon - 2:00 p.m.
WF 8:00 a.m. - 9:30 a.m.
W noon - 1:00 p.m.
|Teaching Assistant||Mrinmoy Roy||Z1907278@students.niu.edu||W 8:00 p.m. - 10:00 p.m.
F 6:00 p.m. - 10:00 p.m.
You will need a Secure Shell (SSH) client to connect to the departmental Unix servers. Windows users can download and install the free PuTTY SSH client; users of Windows 10, macOS, and Linux can use a pre-installed command-line SSH client.
The FileZilla File Transfer Protocol (FTP) client can be used to upload files to and download files from the departmental Unix servers. Versions of this software are available for Windows, macOS, and Linux.
Mac users can also use command-line FTP from the Terminal. Instructions on how to do so can be found here. Alternatively, there are a variety of FTP clients available on the App Store (try searching for "FTP client").
|1||Review Chapters 1 - 6, 7.1 - 7.7
Read chapters 8.3 - 8.4
|2||Read Chapters 7.8 - 7.9, 20|
|3||Read Chapters 8.1 - 8.2, 9.1 - 9.7, 9.9|
|4||Read Chapters 10 - 13|
|5||Read Chapters 9.8, 14.1 - 14.5|
|6||Read Chapters 14.6 - 14.10|
|7||Read Chapters 19.1, 19.4|
|8||Read Chapters 18.1 - 18.2, 19.2, 19.5|
|9||Read Chapters 16, 18.3 - 18.4|
|10||Read Chapter 21|
|11||Read Chapters 17, 18.5, 19.3, 19.6|
|12||Read Chapter 15.1 - 15.5|
|13||Read Chapter 15.6 - 15.8|
nano- a simple text editor
man- the Unix online manual
pwd- print working directory pathname
cd- change to a new working directory
ls- list information about one or more files or the contents of a directory
chmod- change file modes (permissions) for a file or directory
cat- concatenate files and print on the standard output
less- file perusal filters
diff- compare files line by line
mkdir- make a new directory
rmdir- remove an empty directory
cp- copy one or more files
mv- move (or rename) files
rm- remove files
ln- make a link to a file
g++- GNU C++ compiler and linker
RationalClass Operator Overloading Example
In addition to the basic
nano editor covered in lab training, there are several other editors available on most Unix systems that offer more powerful editing capabilities and customization.
vi editor can be found on every Unix system.
vim is an improved version of
vi distributed with most newer versions of Unix (including ours - on our system, typing "vi" will actually run the
vim editor). You can access a short online tutorial on this editor by typing
vimtutor at the Unix prompt.
GNU Emacs is a free, portable, extensible text editor found on many systems throughout the world of programming, including ours.
gdbDebugger References and Tutorials
Don't care for any of these sites? Search for "gdb tutorial" and take a look at some of the other ~2,100 hits you'll get!