I’m using Cloud9 for my IDE and compiler to learn the C Programming Language.
Going through Schildt’s “Teach yourself C” which is copyrighted 1989. I’m thinking there has been a syntax update. When I entered the following code, I received an error.
Code
#include “stdio.h”
main( )
{
printf(“This is a short C program.”);
}
Response with error:
warning: return type defaults to ‘int’ [enabled by default]
main( )
^
This is a short C program.
Issue:
The program did run and displayed “This is a short C program.”, but looks like it added “int” in front of main ( ) for me.
Adding int in front of main ( )
#include “stdio.h”
int main( )
{
printf(“This is a short C program.”);
}
Running program again with no errors:
This is a short C program.
Process exited with code: 0
Followup needed:
Q: What change has happened since book was published?
Q: What current version of C is running inside Cloud9?
A: gcc -v
Actual Answer: gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04)
pgarth:~/workspace $ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v –with-pkgversion=’Ubuntu 4.8.4-2ubuntu1~14.04′ –with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs –enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ –prefix=/usr –program-suffix=-4.8 –enable-shared –enable-linker-build-id –libexecdir=/usr/lib –without-included-gettext –enable-threads=posix –with-gxx-include-dir=/usr/include/c++/4.8 –libdir=/usr/lib –enable-nls –with-sysroot=/ –enable-clocale=gnu –enable-libstdcxx-debug –enable-libstdcxx-time=yes –enable-gnu-unique-object –disable-libmudflap –enable-plugin –with-system-zlib –disable-browser-plugin –enable-java-awt=gtk –enable-gtk-cairo –with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre –enable-java-home –with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 –with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 –with-arch-directory=amd64 –with-ecj-jar=/usr/share/java/eclipse-ecj.jar –enable-objc-gc –enable-multiarch –disable-werror –with-arch-32=i686 –with-abi=m64 –with-multilib-list=m32,m64,mx32 –with-tune=generic –enable-checking=release –build=x86_64-linux-gnu –host=x86_64-linux-gnu –target=x86_64-linux-gnu
Thread model: posix
gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04)