Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Problem with a simple C app. Calloc

Name: shaun 2010-06-04 8:43

I'm making this simple C program.  I'm using Calloc to allocate space to hold an array containing the number of instances of each letter in the file.
Source: http://pastebin.com/G46Pr6Tg

When I try to Calloc, or Malloc then memset the memory, one of the items in the array is not initialised to zero.  This is part of the array straight after initialisation:
......
Number of f: 0
Number of g: 0
Number of h: 134777
Number of i: 0
Number of j: 0
......

What did I do wrong?

Name: Anonymous 2010-06-04 17:15

>>19
It is necessary for C++ compatibility. You will probably want your code compilable by a sepples compiler at some point (especially since Microsoft's compiler and Visual Studio don't support C99). Add -Wc++-compat to your compiler options to catch these things with GCC/Clang.

Casting your malloc()s is just about the only major compatibility issue you run into with C99 vs C++, so you may as well just do it or make some macros to do it for you. (The only other real issue is trying to use enums as ints, but few people do that in practice.)

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List