c

how to use char* as char[]

Hello, I have a struct like this typedef struct bookStruct { char title[80]; char author[80]; } BookType; And I have two strings like this char *title = "A Book on C"; char *author = "A. Kelly"; Now I can't create a BookType like this BookType book = {title, author}; Can anyone tell me what is wrong? How can I do that? ...

C Remove the first line from a text file without rewriting file

Hi, I've got a service which runs all the time and also keeps a log file. It basically adds new lines to the log file every few seconds. I'm written a small file which reads these lines and then parses them to various actions. The question I have is how can I delete the lines which I have already parsed from the log file without disrupt...

What predefined macro can I use to detect clang ?

I'm trying to detect the compiler used to compile my source code. I can easily find predefined macros to check for MSVC or GCC (see http://predef.sourceforge.net/ for example), but I cannot find any macro to check for clang. Does someone know if clang defines a macro like __CLANG__ in order to know what is currently compiling my code ? ...

Help with malloc and free: Glibc detected: free(): invalid pointer

I need help with debugging this piece of code. I know the problem is in malloc and free but can't find exactly where, why and how to fix it. Please don't answer: "Use gdb" and that's it. I would use gdb to debug it, but I still don't know much about it and am still learning it, and would like to have, in the meanwhile, another solution. ...

What is the best way to design GUI Applications with C?

I always find good tutorials on the subject, but it almost always is C++. Is it hard or just doesn't make sense to make GUI applications with C? A good book, guide or a tutorial is fine. Platform: Linux Thanks ...

Why do I need to close fds when reading and writing to the pipe?

However, what if one of my processes needs to continuously write to the pipe while the other pipe needs to read? This example seems to work only for one write and one read. I need multi read and write void executarComandoURJTAG(int newSock) { int input[2], output[2], estado, d; pid_t pid; char buffer[256]; char linha[1...

measure time to execute single instruction

Dear all, Is there a way using C or assembler or maybe even C# to get an accurate measure of how long it takes to execute a ADD instruction? ...

Warning about data loss c++/c

I am getting a benign warning about possible data loss warning C4244: 'argument' : conversion from 'const int' to 'float', possible loss of data Question I remember as if float has a larger precision than int. So how can data be lost if I convert from a smaller data type (int) to a larger data type (float)? ...

Implementing backspace using outtextxy in graphics.h in c

Yersterday I was trying to create a text editor in c. but i am facing a problem with the backspace character. and when i am trying to print this with outtextxy a strange character is appearing. i tried following code for this backspace: str[2]="\b "; outtextxy(x,y,str); This is working fine under textmode but not working under graphic...

Painting on GtkScrolledWindow or GtkEventBox

Using GTK, I'm trying to overlay a "More" prompt (but it could just as well be any drawing object) in the corner of a GtkTextView contained within a GtkScrolledWindow. I draw the prompt in the handler for the expose signal of the text view. It works, but when I scroll the window I get artifacts: the prompt is moved along with the content...

Segmentation fault in C recursive Combination (nCr)

PLease help me out here. The program is supposed to recursively find out the combination of two numbers. nCr = n!/ (r!(n-r)! ). I'm getting this error message when i compile it on GCC. Here's what the terminal shows: Enter two numbers: 8 4 Segmentation fault (Program exited with code:139) The code is given here: #include<std...

How to modulate every texture unit in OpenGL ES 1.1?

I have two textures and a "blend factor", and I'd like to mix them, modulated by the current color; in effect, I want to use the following shader: gl_FragColor = gl_Color * mix(tex0, tex1, blendFactor); I'm using OpenGL ES 1.1, targeting all versions of the iPhone, so I can't use shaders, and I have two texture units. My best attem...

Applications result affected by another running application.

This is a follow on from my previous question although this is about something else. I've been having a problem where for some reason my message that I pass from one process to another only displays the first letter, in this case "M". My application based on a MSDN sample so to make sure I hadn't missed something I create a separate so...

Pipe implementation

I am trying to implement a linux shell that supports piping. I have already done simple commands, commands running in background, redirections, but piping is still missing. I have already read about it and seen some snippets of code, but still haven't been able to sort out a working solution. What I have so far: int fd[2]; pipe(fd); ...

Detecting all memory changes in C

Is there a way I can find out all changes to memory by a particular piece of code( a function or a line of code ) without knowing in advance where I expect the changes(I want to watch the whole program memory space)? watch in gdb requires me to know what I expect is changing... ...

For simple C cmd programs: how to add "program executed in 12,345 seconds" ?

I'm a windows user, and I'm learning C. I use Codeblocks and visual c++ 2008 express at home to write simple C command line programs (I'm a beginner) and I find really useful when codeblocks adds a few lines at the end with the time it takes (example: "Process returned 0 (0x0) execution time : 6.848 s"). I want to add this functionali...

putenv/setenv using substitutions

I need user to define all the environment variables needed for my program in a text file as shown below. MyDLLPath = C:\MyDLLPath MyOption = Option1 PATH = %MyDLLPath%;%PATH%; In my program I read each line and call putenv with the string. Problem is that the environment substitutions (%MyDLLPath%) are not being expanded. I am guessing...

C socket programming: client send() but server select() doesn't see it

Hey all, I have a server and a client running on two different machines where the client send()s but the server doesn't seem to receive the message. The server employs select() to monitor sockets for any incoming connections/messages. I can see that when the server accepts a new connection, it updates the fd_set array but always returns ...

Casting in mixed type calculations in C?

Hi, If I define these variables: double x0, xn, h; int n; and I have this mathematical expression: h = (xn - x0)/n; Is it necessary that I cast n into double prior doing the division for maximum accuracy like in h = (xn - x0)/ (double) n; I wrote a program to check the above but both expressions give the same answers. I understa...

C, pass awk syntax as argument to execl

I want to run the following command from a C program to read the system's CPU and memory use: ps aux|awk 'NR > 0 { cpu +=$3; ram+=$4 }; END {print cpu,ram}' I am trying to pass it to the execl command and after that read its output: execl("/bin/ps", "/bin/ps", "aux|awk", "'NR > 0 { cpu +=$3; ram+=$4 }; END {print cpu,ram}'",(char *) ...