Syndicate content

C

The C language is one of the oldest. It allows for very fast implementations, but has a huge lack of memory protection.

[ODBC Driver Manager] Data source name not found and no default driver specified

As I was working on a MS-Windows installation, I ran in this weird error: Data source not found and no default driver specified...

This was output when I was running the following in a command line prompt:

osql -E

The result should have been an MSSQL prompt instead!

The problem on the computer was that I uninstalled MSSQL 2005 that was automatically installed by Visual Studio C++ and was not compatible with our application, so I first uninstalled that but that uninstallation is really not proper. It leaves a LOT of things behind.

After that I installed MSSQL 2014 which was reported as ...

Console color: dark blue on black unreadable

As I work in consoles every now and then, I run in that one problem:

Some text is written in Dark Blue over the Black background:

This is a good example of what I'm talking about.

And if you can read that text, wow! (without selecting it first.

So... how could you change the color of that blue to make it readable? There is a way by sending some escape command to the console:

echo -e "\\e]R\\e]PC6495ed"

That command changes the color of the blue to a light blue (somewhat "cyan", although not light cyan.)

The "\\e]R" part is to reset the colors to ...

Very Sleepy CPU Profiler written in C/C++

When running a process under MS-Windows, it is at times rather difficult to find a problem caused by some slowness in your code, especially when it is not expected to be slow.and you do not get any kind of feedback from your software outside of the slowness itself.

When that happens a good way to find the problem is to use a profiler. Under MS-Windows, you have quite a few choices, but in most cases I've seen rather complicated solutions. Today I was told to check in Very Sleepy which I downloaded very quickly, installed very quickly, and ran very quickly., Also it did not give me the ...

Doxygen does not generate documentation for my C functions (or any global function)

As I write programs, mainly in C++, I document them using the Doxygen tool. This is a very powerful parser that is capable to finding functions, variables, macros, and many other things in the source code and attach the corresponding documentation to those functions, variables, macros, etc.

This is extremly practical when creating large projects or libraries that you want to share with others.

One problem though, by default it seems like global functions (and thus C functions) and variables do not make it to the documentation, when C++ classes work fine.

There are two potential issues:

...

1 New MS-Windows Installation Update for a whole week?

For a week now I have had a warning when shutting down saying that there was yet another update to install on shutdown...

I did not really check on it for that long, but today I decided to check the auto-update as I was running the computer. There was the installation ready to be run. So I clicked on the button to start the installation.

After a moment, the installation process stopped with a really weird error:

Error message: Code 13EC, it's an unknown error.

It's funny that any programmer would create an error that the computer cannot figure out... Way beyond me.

This being ...

Quickly saving an image to disk without extra library

Often, when I work with some form of graphics, I do not have a handy library to save the image buffer I'm working with in a file on disk. In most cases, when I want to do that, I make use of the Targa format. This is very easy to save since the header is very simple (18 bytes) and the data can be saved verbatim. Plus, many tools, such as the Gimp, can read the result at once.

Here is my C code to do so. It will work in C++ also. It should be easy to tweak for other languages such as C#.

{
  unsigned char hdr[18]; // the targa file header
  FILE *f;

  memset(hdr, 0, sizeof(hdr));  ...

The C++ delete operator, will it do what you expect?

It has always been weird to me to see that the delete operator was not actually going to call all the destructor on objects. That is, if you create a class B that derives from a class A, deleting an object when cast to A does not (by default) call the destructor defined in class B.

The result is that ALL classes should define their destructor as virtual. This doesn't make sense because you shouldn't have to have a virtual table in all your objects just for the destructor to work right. On the other hand, class A has no way to know that it will be derived by class B so its destructor

Includes in your C++ files... and namespace "side effects"

Today I discovered that I couldn't include the QDebug header file at the time I need it.

When I write in C/C++ I like to add my test libraries at the point where I'm writing the debug function I'm working on so that way I can delete it all at once.

So the skeleton of a file would look something like this:

Comment (copyright/purpose of file)

#include of all headers necessary

code

#include of debug headers

debug code

However, today I had problems compiling and/or linking doing so. The qDebug() << ... expressions did not want to work.

Moving the #include of debug headers to

rsync backup generating a connection unexpectedly closed, error in rsync protocol data stream

Description

I wrote a small shell script (bash) to make a backup of one of my hard drive to another. Really, a very very simple script. It has one rsync command per partition. So I have one variable to define all the options and one rsync call per partition:

C++ automatic optimizations

Once in a while I check how the compilers are behaving in such and such situations to make sure that when I wrote code it gets properly optimized. Today I was surprised as I tried to put a break point of a variable and it looked like the compiler wasn't using it. Indeed, the optimizer 100% removed the variable from the final code. Quite interesting since trying to reverse engineer this assembly language would probably end up using a goto statement... (ouch!)

The code goes more or less like this:

[toc hidden:1]
Syndicate content Syndicate content

Diverse Realty

Diverse Realty Team

Want a New Home?
Want to Sell Your House?

Call Alex at
+1 (916)
220 6482

Alexis Wilke, Realtor
Salesperson
Lic. # 02024063

Cory Marcus, Broker
Lic. # 01079165

     

Terms of Site Index

Find the page/content you are looking for with our index.