Short answer: you can’t but yes, you can!
This is an endlessly recurring question in many groups on the Internet. Today (2016/01/14) Google has 171 Million hits. This article answers the question and sheds some light on arrays in C. In the second part below I’ll discuss two-dimensional arrays as well.
IMO, arrays are the most misunderstood language construction of C, even more than pointers. Everybody knows that these mysterious pointers are somehow dangerous, thus people (beginners) tend to either avoid, or really try to understand them.
But arrays are something that every beginner quickly understands (in any language). But in C, arrays are actually hidden pointers which makes them even more dangerous than pointers.
Some time ago I wrote this article about using integer operations to calculate fractal images. Currently, I’m giving a course which prepares for malware analysis. Among other things we deal a lot with Intel assembler and how compilers create and optimize code.
The full code of everything discussed below (and also of the article referred to above) is found on Github at github.com/rahra/intfract.
One of the exercises was to write the integer version of the iteration function manually in assembler. Here is the original version in C: Continue reading
By Tilo Jung.
Libcairo supports several output file formats (PNG, PDF, SVG) and PNG as input format. But often it is necessary to read and write JPG files as well.
Libjpeg-turbo does all the JPEG stuff. All you have to do is to combine this with the Cairographics library. I implemented two functions in this small C source file. Most of the code is derived by the online code example of libjpeg and I modified it to fit into the Cairographics world.
Look at the comments in the source code for further information and have phun using it. Don’t hesitate to contact me!
- 2016/01/01: Code updated.
- 2015/12/29: Code updated.
Please be aware that this is experimental because it requires a lot of URL rewriting which is done by Apache’s
mod_proxy_html. I debugged it with Firebug and tried to fix all internal links. Please note that external links to other pages are not rewritten.
The main purpose is to be able to access cypherpunk.at completely surveillance-free (and for me to gain experience in proxying WordPress and mod_proxy_html 😉 )
Nowadays, a responsible administrator should never run any service without TLS anymore. Unfortunately, this makes life even more difficult for several reasons. This article discusses some problems associated to certificates, specifically in respect to web applications which interactively connect to secondary services.
This article explains how to calculate the control points for B-Splines. The basic idea is that we want to interpolate a smooth curve into a set of points. B-Splines are a sequence of Bezier curves which solve that problem. But each Bezier curve is defined by four points: the start and end point and two control points which define the final appearance of a curve segment.
I wrote a sample program which can be downloaded directly here. If you quickly want to use it, simply look at the code and its comments. If your are interested in the background go ahead and read this article 🙂 Continue reading
This article is a step-by-step guide to render your own sea charts. I assume that you have already installed it to your system. If not, download the latest version and run
make install as usual. Make sure that you have installed the packages