Portland, Oregon
June 23, 2024
June 23, 2024
June 26, 2024
Computers in Education Division (COED)
12
10.18260/1-2--48042
https://peer.asee.org/48042
79
Sunjae Park is an assistant professor in the School of Computing and Data Science at Wentworth Institute of Technology, an engineering-focused institution in Boston. He received his undergraduate degree in Electrical Engineering from Seoul National University, and received a masters degree and PhD from Georgia Institute of Technology. His research interests are in program analysis and computer science education.
The C programming language is a language with a long history and used to write programs ranging from embedded device apps to operating systems. Although it's almost 40 years old, the language still regularly appears in the top programming languages in various programming language rankings. This means the language occupies an important part of many undergraduate engineering programs.
However, the language has many pitfalls that make it difficult for novices to learn. The language syntax is overly forgiving, accepting code that will be a compiler error in other languages. On the other hand, the language semantics is unforgiving, leading to security issues, crashes, or silent data corruption.
This paper surveys various tools and their settings that can ease the introduction. First, the paper introduces the development environment setup. Setting up a rich development and debugging environment for C can be complex, especially on Windows systems. Next, the paper surveys various compiler settings that are helpful for novice C programmers. There are around 200 compiler warning flags in the GCC compiler. Although most of these are useful, some of these warning flags are very aggressive and seems to confuse students. This paper reviews many of these and proposes a set that is most useful for students. Lastly, the paper surveys various C code analyzers and recommends those that are easiest to setup while still proving helpful. The recommendations in this paper has been tried and revised in the author's operating system course.
Park, S. (2024, June), Survey of Tools and Settings for Introductory C Programming Paper presented at 2024 ASEE Annual Conference & Exposition, Portland, Oregon. 10.18260/1-2--48042
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2024 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015