all the client names entries are not null, pointers to valid addresses,
every client name is null terminated,
so is username (a valid pointer to a null terminated string)
then, nothing. Maybe test client_names[i] for null. Incidentally, argv is such an array of pointers to char arrays, and while main() provides argc, it is really derived by an extra argv entry at the end, a null pointer, as described in man 2 exec(). Sometimes, the null term is more reliable, like if NUM changes, as there is no Num needed. Stick in some fprintf(stderr,"%d: . . . ", __LINE__, . . .); lines and log what works, unbuffered.
Last edited by DGPickett; 03-30-2011 at 02:19 PM..
Strings don't work that way. It's not crashing anymore, but it's not actually doing what you wanted either. It's just comparing the pointer, not the contents. Try this:
It won't print the first one because str1 and str2 aren't equal. They point to different areas of memory. It will print the second one because str1 and str3 do point to the same area of memory.
As is often the case it's not something wrong with your function as much as something wrong with the data you fed into it. Something's wrong with the variables you passed into the function. Since you, as usual, didn't post the complete code, I'd need psychic powers to help you.
Please post your complete code!
Last edited by Corona688; 03-30-2011 at 03:11 PM..
all the client names entries are not null, pointers to valid addresses,
every client name is null terminated,
so is username (a valid pointer to a null terminated string)
then, nothing. Maybe test client_names[i] for null. Incidentally, argv is such an array of pointers to char arrays, and while main() provides argc, it is really derived by an extra argv entry at the end, a null pointer, as described in man 2 exec(). Sometimes, the null term is more reliable, like if NUM changes, as there is no Num needed. Stick in some fprintf(stderr,"%d: . . . ", __LINE__, . . .); lines and log what works, unbuffered.
i defined client_names like
char *client_names[NUM];
and only one element was defined
how do i set the ones i am not using to not null ?
Do you not understand the meaning of "complete code"? I hope that's enough.
To set things to NULL, set them equal to NULL.
...but that's not enough to stop crashes. NULLs aren't a warning for the computer -- they're a warning for you. The program must check if things are NULL before you use them.
Oddities with gcc, 2.95.3 for the AMIGA and 4.2.1 for MY current OSX 10.14.1...
I am creating a basic calculator for the AMIGA ADE *NIX emulator in C as it does not have one.
Below are two very condensed snippets of which I have added the results inside the each code section.
IMPORTANT!... (11 Replies)
this is a network programming code to run a rock paper scissors in a client and server.
I completed it and it was working without any error. After I added the findWinner function to the server code it starts giving me segmentation fault.
-the segmentation fault is fixed
Current problem -Also... (3 Replies)
I use a binary name (ie polo) it gets some parameter , so for debugging normally i do this :
i wrote script for watchdog my app (polo) and check every second if it's not running then start it , the problem is , if my app , remain in state of segmentation fault for a while (ie 15 ... (6 Replies)
Hi,
I am having this segmentation fault not in the following program, bt. in my lab program . My lab program is horrible long so cannot post it here bt. I am using the following logic in my program which is giving the segmentation fault. Bt. if I run this sample program as it is it dosen't give... (3 Replies)
Hi,
While comparing primary key data of two tables thr bteq script I am getting this Error. This script is a shell script.
*** Error: The following error was encountered on the output file.
Script.sh: 3043492 Segmentation fault(coredump)
Please let me know how to get through it.
... (5 Replies)
Hi,
Why I don't receive a segmentation fault in the following sample.
int main(void)
{
char buff;
sprintf(buff,"Hello world");
printf("%s\n",buff);
}
If I define a buffer of 10 elements and I'm trying to put inside it twelve elements, Should I receive a sigsev... (22 Replies)
Hi ,
During execution a backup binary i get following error
"Program error 11 (Segmentation fault), saving core file in '/usr/datatools"
Riyaz (2 Replies)
ive written my code in C for implementation of a simple lexical analyser using singly linked list hence am making use of dynamic allocation,but when run in linux it gives a segmentation fault is it cause of the malloc function that ive made use of????any suggestions as to what i could do???
thank... (8 Replies)
I have written a program which takes a directory as command line arguments and displays all the dir and files in it.
I don't know why I have a problem with the /etc directory.It displays all the directories and files untill it reaches a sub directory called peers which is in /etc/ppp/peers.the... (4 Replies)
hello all,
I tried a program on an array to intialise array elements from the standard input device.it is an integer array of 5 elements.but after entering the 4th element it throws a message called "Segmentation Fault" and returns to the command prompt without asking for the 5th element.
... (3 Replies)