472,145 Members | 1,431 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,145 software developers and data experts.

debug assertion failed str!=NULL fprintf.c

Hi,

I have an application with a function "myfunction" that opens a file
and writes to it using fprintf.
This application runs on a unix (sun solaris 5.8) system.
I connect to this application from a VB GUi on a windows 2000 system.
The GUI invokes "myfunction".

I get the following error:-

"debug assertion failed str!=NULL fprintf.c"

The check for NULL handler is in place.The code is similar to teh
following lines:-

FILE *fp;
fp=fopen("myfile.txt","a");
if (fp==NULL)
exit(1);

fprintf(fp,"hello");

Since I check for the FILE handler for NULL value before executing
fprintf,why should I get the debug assertion failed error.

Thanks
Arti
Jul 22 '05 #1
2 17116
Arti Potnis wrote:
I have an application with a function "myfunction" that opens a file
and writes to it using fprintf.
This application runs on a unix (sun solaris 5.8) system.
I connect to this application from a VB GUi on a windows 2000 system.
The GUI invokes "myfunction".

I get the following error:-

"debug assertion failed str!=NULL fprintf.c"

The check for NULL handler is in place.The code is similar to teh
following lines:-

FILE *fp;
fp=fopen("myfile.txt","a");
if (fp==NULL)
exit(1);

fprintf(fp,"hello");
So, you're just printing "hello" into that file? Or is it a bit more
complicated? Try doing exactly what you wrote here. Output "hello"
and see if there is a difference.

Since I check for the FILE handler for NULL value before executing
fprintf,why should I get the debug assertion failed error.


If I read the assertion correctly, it's not the file pointer that is
NULL, it's most likely the format string. Now, when you say "the code
is similar", we cannot help you. You need to post the _actual_ code.
But don't post all of it. Reduce it to the minimal program that does
exhibit the said behaviour.

Also, have you tried simply debugging your application without the VB
GUI thing calling it? What you need to do is isolate your problem. Is
it in the connectivity code? Is it in the UNIX program? Replace the
connectivity part with a simple piece of code that drives the rest of
the UNIX side and see if it makes any difference.

Good luck!

Victor
Jul 22 '05 #2

"Arti Potnis" <ar******@yahoo.com> wrote in message
news:ec**************************@posting.google.c om...
Hi,

I have an application with a function "myfunction" that opens a file
and writes to it using fprintf.
This application runs on a unix (sun solaris 5.8) system.
I connect to this application from a VB GUi on a windows 2000 system.
The GUI invokes "myfunction".

I get the following error:-

"debug assertion failed str!=NULL fprintf.c"

The check for NULL handler is in place.The code is similar to teh
following lines:-

FILE *fp;
fp=fopen("myfile.txt","a");
if (fp==NULL)
exit(1);

fprintf(fp,"hello");

Since I check for the FILE handler for NULL value before executing
fprintf,why should I get the debug assertion failed error.


The problem is the string is NULL, not the file pointer. You say you're
invoking a function in another application? If you're passing the string
from one application to another, you need to read up how to do that safely
on your operating system. Passing a pointer (such as a char*) will usually
not work, because the memory from one app is often not accessible to another
app.

-Howard


Jul 22 '05 #3

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

1 post views Thread by Kapt. Boogschutter | last post: by
4 posts views Thread by A_StClaire_ | last post: by
4 posts views Thread by ellieong | last post: by
2 posts views Thread by karspy | last post: by
2 posts views Thread by Gone With Wind | last post: by
1 post views Thread by jerry | last post: by
reply views Thread by Saiars | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.