EEE1008: C Programming


Good to know

Assignments

Lectures

Practical sessions

C programs

An archive of all programs discussed during the lectures can be downloaded here.

Programming competitions

The School is looking for students to participate in the ACM International Collegiate Programming Contest. The next official competition is the Northwestern Europe Regional Contest 2017 hosted by the University of Bath on November 25-26. If you are interested in joining the team send an email to the team coach Andrey Mokhov.

Useful web resources:

Useful hints

Starting the Bash Shell

Please read the following document: Helpful Hints. You can also access the Bash Shell on the Windows 7 desktop by moving the mouse pointer to the lower left of the screen. Then click on All Programs, Cygwin, Cygwin Bash Shell. You might want to put a shortcut to this on your desktop.

"Standard" C libraries of functions under Cygwin

These libraries can be found by typing (in your Cygwin bash shell)

cd /usr/include

You will find the file stdio.h here (discussed during the lectures); just have a look at its contents with the command

more stdio.h

(keep pressing the space bar to get to the end)

Debugging your programs using GDB

See this GDB tutorial written by Vladimir Dubikhin.

How to print the contents of the Cygwin Bash window

See Dr. K. Wright's document on printing Cygwin

Installing/copying Cygwin

The Cygwin software used in the practicals can be freely downloaded on to your own computer. Go to the cygwin download page and download the file setup.exe (do NOT run this program on a University computer!). Please read the entire page before proceeding. Note that wwwcache.ncl.ac.uk with port number 8080 is the correct information about the University proxy machine (if you are downloading from within the University). When it asks what packages to install, type gcc in the search box, and then click everywhere where it says Default until it changes to Install. Keep the setup.exe program - you need to run it again if you want to install additional packages later.