using c++ and c standard I/O functions


 
Thread Tools Search this Thread
Top Forums Programming using c++ and c standard I/O functions
# 1  
Old 02-19-2009
using c++ and c standard I/O functions

Is it not a healthy practice to mix C and C++ standard I/O functions together

e.g.
Code:

string name; // this is a declared instance of the string class in C++

printf("\nPlease enter your name: ");
cin >> name;

I did something similar in a program Im designing, and used it several times across my code. The first instance worked, however the second time I called it, the program crashed on me.

Is it generally a good idea to do this ? If not, why ?

thanks
# 2  
Old 02-20-2009
It is not a good idea to do this because they both use the same global resources and are probably not aware of each other. If either of them changes global things like file descriptors, etc. in ways the other is not aware of, it may cause unexpected results in the other, including crashes.

On the other hand it is fine to mix iostream and stdio as long as you don't use them on the same files. Since stdin and stdout are of course different, I suspect the crash you had was for reasons unrelated, but can't say this for sure without seeing the real code.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Programming

Newline in ANSI-C standard functions

Can someone outline the "best practice" (if any!) to handle newline in ANSI-C standard library functions? I had some confusion with these functions recently related to char array and char pointer. puts(), printf(), strcpy(), strncpy(), memset(). I seem to understand their basic use, but got... (6 Replies)
Discussion started by: yifangt
6 Replies

2. Shell Programming and Scripting

How to execute functions or initiate functions as command line parameters for below requirement?

I have 7 functions those need to be executed as command line inputs, I tried with below code it’s not executing function. If I run the ./script 2 then fun2 should execute , how to initiate that function I tried case and if else also, how to initiate function from command line if then... (8 Replies)
Discussion started by: saku
8 Replies

3. UNIX for Dummies Questions & Answers

== vs -eq and functions

Hey I have a question.... what is the difference between using == vs -eq when testing in WHILE loops. I use the following test that only worked with == signs.... if why do i need == and not -eq? 2. I need to re-use some code in a couple places in this script. is functions my best... (5 Replies)
Discussion started by: danieldcc
5 Replies

4. Shell Programming and Scripting

Standard out and standard error

I need to run a cronjob and in the cronjob I execute a script that if there is an error produces standard error so I do /RUNMYSCRIPT 2> mylogfile.log However, if it runs correctly, I don't get a standard error output, I get a standard out output. How do I redirect both standard error and... (2 Replies)
Discussion started by: guessingo
2 Replies

5. UNIX for Dummies Questions & Answers

Redirect Standard output and standard error into spreadsheet

Hey, I'm completely new at this and I was wondering if there is a way that I would be able to redirect the log files in a directories standard output and standard error into and excel spreadsheet in anyway? Please remember don't use too advanced of terminology as I just started using shell... (6 Replies)
Discussion started by: killaram
6 Replies

6. UNIX for Dummies Questions & Answers

Help with functions

Hi, I am exploring with defining functions in my BASH shell scripts. However, I am bit confused about how to pass parameters to my functions. I was under the impression that you must do something like the following: Define a function called "sample_function": function sample_function {... (3 Replies)
Discussion started by: msb65
3 Replies

7. Shell Programming and Scripting

standard error to standard out question

Hi there how can i get the result of a command to not give me its error. For example, on certain systems the 'zfs' command below is not available, but this is fine becaues I am testing against $? so i dont want to see the message " command not found" Ive tried outputting to /dev/null 2>&1 to no... (5 Replies)
Discussion started by: hcclnoodles
5 Replies

8. Programming

Standard UNIX functions

Hi everybody, first of all i apologize if my thread's title doesn't make much sense,but i coudn't find a more appropriate name :) Then i apologize about my question,which probably will sound trivial for you :) :) I am working on a program which is being tested in Linux but the final target is... (2 Replies)
Discussion started by: Zipi
2 Replies

9. UNIX for Advanced & Expert Users

To know the standard

Dear all, I have a need to find the standard of my system such as POSIX. How can I know that. Is there any way to find it. I am using GNU/Linux. (2 Replies)
Discussion started by: nagalenoj
2 Replies

10. Shell Programming and Scripting

Use of functions

Hi my shell is tcsh can I have functions in my shell scripting? Is the below shell script correct. Can I have two functions and call one of them as required. ---------- echo "functions" f1 f1 () { echo "hello" } f2 () (1 Reply)
Discussion started by: amitrajvarma
1 Replies
Login or Register to Ask a Question