Sponsored Content
Top Forums Programming Program received signal: “EXC_BAD_ACCESS”? Post 302524558 by achenle on Monday 23rd of May 2011 08:45:20 PM
Old 05-23-2011
Quote:
Originally Posted by Corona688
Code:
char *string1;

This is a character pointer. On a 32-bit system, it takes 4 bytes, on a 64-bit system, 8 bytes. When I type in 'slartibartfast', where is it going to put it?

Inside the pointer? No, not enough room, and besides -- that's not how pointers work. The idea of a pointer is that it points to the memory you want to use, right?

So what memory have you got the pointer pointing to? Nothing? Uh-oh.

That leaves it at a random garbage value. Since pointers have no magic power of predicting what you want to do to them, it doesn't create memory for you to put things in and the pointer remains at what it started at -- some random garbage value. So scanf tries to store it in some undefined location in memory which naturally crashes

You should make the pointer actually point to something if you expect it to work. char string1[128]; or char *string1=malloc(128);
A string of characters such as "ABCD" is a character array. That we all know.

But an array evaluates to the address of it's first element, so when you see "ABCD" in an expression, it is effectively treated as a char *.

So the statement
Code:
char *string = "ABCD"

is perfectly valid. The pointer "string" is a char * value that is assigned the address of the first element of the "ABCD" array.

The OP's problem is he's trying to concatenate another string on the end of a static, constant array - his strcat() call is trying to write to the memory immediately following where his "tar czvf YourNewFile.tar.gz " string is stored.

And that appears to be read-only memory. Which is better than nuking whatever data is there.
 

10 More Discussions You Might Find Interesting

1. Programming

Program received signal SIGABRT, Aborted.

I ran degugger in C++ and the followings are the message I got: Program received signal SIGABRT, Aborted. 0x002a57a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 (gdb) info s #0 0x002a57a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x002e97f5 in raise () from /lib/tls/libc.so.6... (1 Reply)
Discussion started by: napapanbkk
1 Replies

2. Programming

Program received signal SIGSEGV, Segmentation fault.

Dear all, I used debugger from C++ and these are the message I got: Program received signal SIGSEGV, Segmentation fault. 0x00323fc0 in free () from /lib/tls/libc.so.6 (gdb) info s #0 0x00323fc0 in free () from /lib/tls/libc.so.6 #1 0x00794fa1 in operator delete () from... (5 Replies)
Discussion started by: napapanbkk
5 Replies

3. Forum Support Area for Unregistered Users & Account Problems

no email received

I have tried to register and got a message saying an email would be sent but no email has turned up. Could you try again please? (1 Reply)
Discussion started by: lookingfor help
1 Replies

4. AIX

Received signal #11, SIGSEGV [default] on AIX 6.1

Hello, One of our customer is getting segmentation fault when he runs his shell script which invokes our executable on AIX 6.1. On AIX 5.3, there were no issues. Here is the truss output. 811242: __loadx(0x0A040000, 0xF0D3A26C, 0x00000000, 0x00000009, 0x00000000) = 0xF026E884... (0 Replies)
Discussion started by: erra_krishna
0 Replies

5. AIX

nim: error signal number 2 received

Hi to all, i am trying to make mksysb backup of a NIM client machine from NIM master and while i am reading that the backup is done successfully i get an error message below and it doesnt exit the smit screen. also the status of the command appears to be running. is there anybody who knows why... (3 Replies)
Discussion started by: omonoiatis9
3 Replies

6. Programming

Please help:program hang stuck there signal handling on POSIX Message Queue UNIX C programming

in a single main() function,so need signal handling. Use Posix Message Queue IPC mechanism , can ignore the priority and other linked list message,to implement the scenario: client:Knock Knock server:who's there client: Eric Server:Eric,Welcome. client:exit all process terminated ... (1 Reply)
Discussion started by: ouou
1 Replies

7. Programming

Why do I receive Program received signal SIGABRT, Aborted?

Im using gdb and when a user disconnects from my server I receive a message Program received signal SIGABRT, Aborted. 0x7ffe0304 in ?? () I was hoping someone here might have a explination for this message in gdb (26 Replies)
Discussion started by: Errigour
26 Replies

8. Forum Support Area for Unregistered Users & Account Problems

No activation email received

I have tried to register today with the username BatterBits, but have not received the activation email I do not live in any of the restricted countries - unless the UK has suddenly become a threat! I'd be grateful if you would assist. many thanks Ian (2 Replies)
Discussion started by: unregistered
2 Replies

9. UNIX for Beginners Questions & Answers

Error received

I have a program that i need to get done that gets the person's name and his grade then prints it in this order "name-grade-gradeletter" so i wrote this code: #!/bin/bash while :; do read -p "Enter the person's name: " name read -p "Enter the grade of the person: " grade case $grade in )... (3 Replies)
Discussion started by: UniverseCloud
3 Replies

10. Shell Programming and Scripting

Any help gratefully received

Multiple questions coming your way. A little back ground info as to why I am back to basics. A dear friend of mine passed away recently and as a request by him I have promised to keep his project alive. The problem I have it was being handed over when he was in the last weeks of his life and... (1 Reply)
Discussion started by: nobbyall
1 Replies
smfi_setreply(3N)														 smfi_setreply(3N)

NAME
smfi_setreply() - sets the default SMTP error reply code SYNOPSIS
PARAMETERS
ctx Specifies the opaque context structure. rcode Specifies the 3-digit (RFC 821/2821) SMTP reply code as a null-terminated string. rcode cannot be set to NULL value. rcode must be a valid or reply code. xcode Specifies the extended (RFC 1893/2034) reply code. An xcode must conform to RFC 1893/2034. If xcode is set to NULL, an extended code is not used. message Specifies the text part of the SMTP reply. If message is set to NULL, an empty message is used. DESCRIPTION
The routine directly sets the SMTP error reply code for a connection. Only and replies are accepted. uses this code on subsequent error replies from the Milter function. can be called from any function except the function. Notes o Values passed to are not checked for standards compliance. o The message parameter must contain only printable characters; other characters may lead to undefined behavior. For example, CR or LF causes the call to fail, a single (percentage) character can cause the text to be ignored. If a (percentage) character must be used in a string, it must be used as o For more information on reply codes and their meanings, see RFC 821, 2821, 1893, or 2034. o If the reply code (rcode) given is a code but is used for the message, the normal reply is not used. If the reply code (rcode) given is a code but is used for the message, the custom reply is not used. In neither of these two cases, an error is returned to the Milter and silently ignores the reply code. o If the Milter returns and sets the reply code to the SMTP server terminates the SMTP session with a error code. RETURN VALUE
fails and returns if the rcode or xcode argument is invalid or a memory allocation failure occurs; otherwise; returns AUTHOR
The routine was developed by the Sendmail Inc. SEE ALSO
smfi_getsymval(3N), smfi_getpriv(3N), smfi_setreply(3N), smfi_setpriv(3N). on smfi_setreply(3N)
All times are GMT -4. The time now is 09:06 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy