why won't this Work?


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers why won't this Work?
# 1  
Old 12-08-2003
why won't this Work?

hey programmers!

1-why won't gcc accept [getc()] as an argument? i tried the recommendations on the man page of getch(),..etc. nothing worked.

2-why it won't see <iostream> && <fstream> even if i implemented the function as follow
std::cout<<"..etc"<<endl;

3-after i type this code in it gives me a cast Error. Why?
Code:
        struct something{
                      struct something *left;
                      struct something *right;
                      char data;
        };
        .
        .
        .
 int main(char *argv[], int argc){
            struct something *head=malloc(sizeof(struct something));
            printf("Data\n");
            getc(head->data);        //here is where the error occurs
            .
            .
            .
}

can anyone help.......... Thanks!

added code tags for readability --oombera

Last edited by oombera; 02-19-2004 at 03:03 PM..
# 2  
Old 12-08-2003
1) What do you exactly mean by passing getc() as an argument? Please post a minimum code example.

2) Are you sure you are using g++, NOT gcc? gcc is a C compiler and cout is a C++ object.

3) Please read the getc() man page. The argument is a FILE* pointer to the stream from which to get the character byte, which is not a char.
# 3  
Old 12-08-2003
thanks for the replay.

the second question is actually a C++ question, i should have mentioned that before, the compiler i am using is gcc, not g++(which i use for q2 or C++ programs). and when i pass it as an argument i mean==>
if (.......){ while (getc(.....)!=NULL){ do something; } }

P.S: what about <fstream> isn't it a C standard library?

and thanx in advance.
# 4  
Old 12-08-2003
You should use g++, not gcc to compile C++ programs. fstream is standard C++ library header. C programs use stdio.h for input/output instead.

getc() should work. And as I mentioned, the argument is a FILE* file descriptor from which to read a single character.
# 5  
Old 12-08-2003
thanks alot!
i will follow your advice, but what do i use in stdio to replace ifstream & ofstream in c++ standard library.
# 6  
Old 12-08-2003
getc() is an example of a function available in stdio.h. For example, you may use printf() to output character string to the terminal (standard output). To write to file you may use fprintf(). To read a line from terminal or file you may use fgets() etc.

Basically, use either the <stdio.h> set of functions (C/C++) or the iostream objects (C++). Mix-n-match them in a single program isn't a good practice. I prefer stdio.h functions myself, but if you write C++ you do have a choice.

There are other stdio functions you may use also. I think any good C programming books or online tutorials should give you a good introduction to these functions.
# 7  
Old 12-08-2003
you have been a great help tonight, thanks again.
i think i should focus on c || c++ "at-a-time" instead of trying out both at the sametime, and confuse myself and others.

once again, i appreciate your help.Smilie
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. IP Networking

NAT via iptables - Won't work!!

Hi guys I'm running on debian on a small embedded system. I have a ppp interface that is connected to the internet (and works). My unit also has wifi access point (which works and I can connect to it). I want to allow connections to the wifi to be able to use the internet from ppp0... (1 Reply)
Discussion started by: alirezan1
1 Replies

2. UNIX for Dummies Questions & Answers

Images won't work?

Hello, Images won't work on UNIX when I try posting them on my website I'm working on. It doesn't show the image, and it's simply erroring. Help! Thanks! (5 Replies)
Discussion started by: yazan
5 Replies

3. UNIX for Advanced & Expert Users

pkill won't work on firefox anymore

Can someone tell me why pkill won't work on firefox anymore? (11 Replies)
Discussion started by: cokedude
11 Replies

4. BSD

Install cd won't work

Hi! I'm sure that somebody here installed freeBSD from a download of a virtual disc (.iso). But I made 5 downloads of 5 differents freeBSD installation (and no one has worked).Can somebody tell me where to download and how (if needed) to prepare the cd? (8 Replies)
Discussion started by: maxum
8 Replies

5. Solaris

string extraction won't work. Why?

#!/usr/bin/ksh set -x testfile=my.test.file.flag echo ${testfile: (-4)} #/home/maldohe/scripts/spawn1& sleep 3 echo myspawn is now ending exit Background: I am trying to extract the word flag from anf given file name. This is a demo script that I am working on to fix a production issue.... (8 Replies)
Discussion started by: Harleyrci
8 Replies

6. UNIX for Dummies Questions & Answers

OpenSolaris, Wireless won't work, help please!

I just installed a fork of opensolaris, and I really like it. I would hate going back to Ubuntu, But one issue, I cannot get my Dell Wireless 1450 Wireless USB Adapter working. On Ubuntu 10.4 I just installed nonfree firmware, but I guess it doesn't work that way on Solaris, any help would be... (5 Replies)
Discussion started by: Stormos
5 Replies

7. UNIX for Dummies Questions & Answers

A very simple script, but alias won't work

I am new to unix and therefore I did a lot of reading before posting. So please, if this has been answered before, forgive me for re-posting and point me to the right place for the answer. I have spent many hours searching the net and read over 50 posts in this forum and even tried a few thing but... (20 Replies)
Discussion started by: sssccc
20 Replies

8. OS X (Apple)

Why won't the at command work in Mac OS X?

I typed: echo "echo hi > at_log.txt" | at now +1minute to test the at command on my terminal. I got the message: job 8 at Thu Feb 25 18:42:00 2010 I waited for a minute but nothing happened. I tried listing at_log.txt, but it said there was no such file. Am I doing something... (2 Replies)
Discussion started by: Ultrix
2 Replies

9. UNIX for Dummies Questions & Answers

sed won't work

Hi All, can anybody tell me what's wrong with this code? # SEARCH replaced by REPLACE #!/bin/bash SEARCH="95$$ 0 t" REPLACE="95$$ 1 t" for I in `ls *000.inp | cut -c-12`; do echo $I sed 's/$SEARCH/$REPLACE/' ${I}-000.inp > ${I}-100.inp done It don't replace the string... (5 Replies)
Discussion started by: f_o_555
5 Replies

10. UNIX for Dummies Questions & Answers

Ksh Why Won't IF Statement work?

I'm trying to figure out why this if statement won't work: if || $zipcount != 6 ]] then echo ${myline} echo "ZIPCODE WARNING! ${zipcode} ${zipcount}" fi if ]] then echo ${myline} echo "STATE WARNING!... (3 Replies)
Discussion started by: developncode
3 Replies
Login or Register to Ask a Question