Thread: Little help will be appreciated

  1. #1
    Registered User
    Join Date
    Jun 2009
    Posts
    4

    Little help will be appreciated

    Well i am writing with a friend of mine a program in c with B+ tree(insert function) but although the code seems to be ok a segmentation fault appears.
    the code is the above:Gdb shows that the error is at line 26 but i cannot understand whats going wrong.

    Code:
    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    
    void insert(char key[9]){
      int n,*s,i,*s_temp,s_p,ch,q,tmp,tmp1,test_1,test_2,fl=1,rec_id=33,mem_i[25],mem_i_t[26],j,finished=0,root,b1,b2;
      FILE *fp,*f,*ft,*fr;
      char *buf,buf1[9],buf2[9],mem[22][9],mem_t[23][9]; 
      //strcpy(key,"NZZZZ!!!");
      buf=malloc(sizeof(int));
      fp=fopen("index","a+");
      //f=fopen("credit3.bin","r");
      fr=fopen("root_index","r");
      s=malloc(500*sizeof(int));
      s_p=-1;
      for(i=0;i<=sizeof(int)-1;i++){
        ch=fread(&buf[i],1,1,fr);}
      memcpy(&root,buf,sizeof(int));
      n=root;
      fseek(fp,512*(n-1),SEEK_SET);
      for(i=0;i<=sizeof(int)-1;i++){
        ch=fread(&buf[i],1,1,fp);}
      memcpy(&tmp,buf,sizeof(int));
      while(tmp!=0){
        s_p=s_p+1;
        s[s_p]=n;
        for(i=0;i<=sizeof(int)-1;i++){
          ch=fread(&buf[i],1,1,fp);}
        memcpy(&tmp1,buf,sizeof(int));
        q=tmp1;
        ch=fread(buf1,9,1,fp);
        test_1=strncmp(key,buf1,9);
        if(test_1<=0){
          fseek(fp,162,SEEK_CUR);
          for(i=0;i<=(sizeof(int)-1);i++){
            ch=fread(&buf[i],1,1,fp);}
          memcpy(&tmp1,buf,sizeof(int));
          n=tmp1;}
        else{
          fseek(fp,512*(n-1)+(q-1)*9-1,SEEK_SET);                     /* Go to K q-1 */
          ch=fread(buf1,9,1,fp);      
          test_1=strncmp(key,buf1,9);
          if(test_1>0){
            fseek(fp,512*(n-1)+175+q*sizeof(int),SEEK_SET);           /* Go to P q */
            for(i=0;i<=sizeof(int)-1;i++){
              ch=fread(&buf[i],1,1,fp);}
            memcpy(&tmp1,buf,sizeof(int));
            n=tmp1;}
          else{                                                       /* Search i:K i-1 < Key < K i */
            i=1;
            fseek(fp,512*(n-1)+8,SEEK_SET);
            while(i<=q-1 && fl==1){
              if(i==1){
                ch=fread(buf1,9,1,fp);}
              else{
                memcpy(buf1,buf2,9);}  
              ch=fread(buf2,9,1,fp);
              test_1=strncmp(key,buf1,9);
              test_2=strncmp(key,buf2,9);
              if(test_1>0 && test_2<0){
                fl=0;
                fseek(fp,512*(n-1)+175+(i+1)*sizeof(int),SEEK_SET);
                for(j=0;j<=sizeof(int)-1;j++){
                  ch=fread(&buf[j],1,1,fp);}
                memcpy(&tmp1,buf,sizeof(int));
                n=tmp1;}
              i++;}}}
      fseek(fp,512*(n-1),SEEK_SET);            
      for(i=0;i<=sizeof(int)-1;i++){
        ch=fread(&buf[i],1,1,fp);}
      memcpy(&tmp,buf,sizeof(int));}
      for(i=0;i<=sizeof(int)-1;i++){                                 /* Search leaf node ( Key == K i ) */
        ch=fread(&buf[i],1,1,fp);}
      memcpy(&tmp,buf,sizeof(int));
      q=tmp;
      fl=1;
      i=1;
      while(i<=q && fl==1){
        ch=fread(buf1,9,1,fp);
        test_1=strncmp(key,buf1,9);
        if(test_1==0){
          fl=0;
          printf("Key already exists\n");}
        i++;}
      if(fl==1){                                                     /* If key does not exist , we add it in the tree */
        if(q<22){                                                    /* If leaf node is not full we place the new record */
          ft=fopen("temp","a+");
          fseek(fp,0,SEEK_SET);
          while(ftell(fp)<512*(n-1)){
            putc(getc(fp),ft);}
          for(i=0;i<=sizeof(int)-1;i++){
            ch=fread(&buf[i],1,1,fp);}
          memcpy(&mem_i[0],buf,sizeof(int));
          mem_i[1]=q+1;
          fseek(fp,202,SEEK_CUR);
          for(j=0;j<=22;j++){
            for(i=0;i<=sizeof(int)-1;i++){
              ch=fread(&buf[i],1,1,fp);}
            memcpy(&mem_i[j+2],buf,sizeof(int));}
          fseek(fp,512*(n-1)+8,SEEK_SET);
          for(j=0;j<=21;j++){
            ch=fread(mem[j],9,1,fp);}
          fl=1;
          i=0;
          tmp=0;
          while(fl==1 && i<(q-1)){
            test_1=strncmp(key,mem[i],9);
            if(test_1>0){
              test_2=strncmp(key,mem[i+1],9);
              if(test_2<0){
                fl=0;}}
            else{
              tmp=1;
              fl=0;}
            i++;}
          if(fl==1){
            mem_i[q+2]=rec_id;
            strcpy(mem[q],key);}
          if(fl==0){
            for(j=(q-1);j>=i-1*tmp;j--){
              mem_i[j+3]=mem_i[j+2];
              strcpy(mem[j+1],mem[j]);}
            mem_i[j+3]=rec_id;
            strcpy(mem[j+1],key);}   
          fwrite(&mem_i[0],sizeof(int),1,ft);
          fwrite(&mem_i[1],sizeof(int),1,ft);
          for(i=0;i<=21;i++){
            fwrite(mem[i],1,9,ft);}
          for(i=2;i<=24;i++){
            fwrite(&mem_i[i],sizeof(int),1,ft);}
          for(i=1;i<=214;i++){
            putc(0,ft);}
          fseek(fp,512*n,SEEK_SET);
          fseek(ft,512*n,SEEK_SET);
          while(feof(fp)==0){
            tmp=getc(fp);
            if(tmp!=-1){
              putc(tmp,ft);}}
          fclose(ft);
          fclose(fp);
          remove("index");
          rename("temp","index");
          fp=fopen("index","a+");}
        else{                                                       /* Else we split the leaf node */
          ft=fopen("temp","a+");
          fseek(fp,0,SEEK_SET);
          while(ftell(fp)<512*(n-1)){
            putc(getc(fp),ft);}
          for(i=0;i<=sizeof(int)-1;i++){
            ch=fread(&buf[i],1,1,fp);}
          memcpy(&mem_i_t[0],buf,sizeof(int));
          mem_i[1]=q+1;
          fseek(fp,202,SEEK_CUR);
          for(j=0;j<=22;j++){
            for(i=0;i<=sizeof(int)-1;i++){
              ch=fread(&buf[i],1,1,fp);}
            memcpy(&mem_i_t[j+2],buf,sizeof(int));}
          fseek(fp,512*(n-1)+8,SEEK_SET);
          for(j=0;j<=21;j++){
            ch=fread(mem_t[j],9,1,fp);}
          fl=1;
          i=0;
          tmp=0;
          while(fl==1 && i<q){
            test_1=strncmp(key,mem_t[i],9);
            if(test_1>0){
              test_2=strncmp(key,mem_t[i+1],9);
              if(test_2<0){
                fl=0;}}
            else{
              tmp=1;
              fl=0;}
            i++;}
          b1=n;
          tmp1=ftell(fp);
          fseek(fp,0,SEEK_END);
          b2=ftell(fp)/512+1;
          fseek(fp,tmp1,SEEK_SET);
          if(fl==1){
            mem_i_t[q+3]=rec_id;
            strcpy(mem_t[q+1],key);}
          if(fl==0){
            for(j=q-1;j>=i-tmp;j--){
              mem_i_t[j+4]=mem_i_t[j+3];
              strcpy(mem_t[j+1],mem_t[j]);}
            mem_i_t[j+3]=rec_id;
            strcpy(mem_t[j+1],key);}
          fseek(fp,306,SEEK_CUR);
          tmp=0;
          fwrite(&tmp,sizeof(int),1,ft);
          tmp=12;
          fwrite(&tmp,sizeof(int),1,ft);
          for(i=0;i<=11;i++){
            fwrite(mem_t[i],1,9,ft);}
          for(i=1;i<=90;i++){
            putc(0,ft);}
          for(i=2;i<=13;i++){
            fwrite(&mem_i_t[i],sizeof(int),1,ft);}
          for(i=1;i<=40;i++){
            putc(0,ft);}
          tmp=ftell(fp)/512+1;
          fwrite(&tmp,sizeof(int),1,ft);
          for(i=1;i<=214;i++){
            putc(0,ft);}
          while(feof(fp)==0){
            tmp=getc(fp);
            if(tmp!=-1){
              putc(tmp,ft);}}
          tmp=0;
          fwrite(&tmp,sizeof(int),1,ft);
          tmp=11;
          fwrite(&tmp,sizeof(int),1,ft);
          for(i=0;i<=10;i++){
            fwrite(mem_t[i+12],1,9,ft);}
          for(i=1;i<=99;i++){
            putc(0,ft);}
          for(i=14;i<=24;i++){
            fwrite(&mem_i_t[i],sizeof(int),1,ft);}
          for(i=1;i<=44;i++){
            putc(0,ft);}
          fwrite(&mem_i_t[25],sizeof(int),1,ft);
          for(i=1;i<=214;i++){
            putc(0,ft);}
          strcpy(key,mem_t[11]);
          do{                                                                    /* Insert key in the parent node */
            if(s_p==-1){
              tmp=1;
              fwrite(&tmp,sizeof(int),1,ft);
              tmp=2;
              fwrite(&tmp,sizeof(int),1,ft);
              fwrite(key,1,9,ft);
              for(i=1;i<=162;i++){
                putc(0,ft);}
              fwrite(&n,sizeof(int),1,ft);
              tmp1=ftell(fp);
              fseek(fp,0,SEEK_END);
              tmp=ftell(fp)/512+1;
              fseek(fp,tmp1,SEEK_SET);
              fwrite(&tmp,sizeof(int),1,ft);
              for(i=1;i<=325;i++){
                putc(0,ft);}
              root=tmp+1;
              finished=1;}
            else{                                                           /* If parent node is not full , we place the new record */
              n=s[s_p];
              s_p--;
              fseek(fp,512*(n-1)+4,SEEK_SET);
              for(i=0;i<=sizeof(int)-1;i++){                                 
                ch=fread(&buf[i],1,1,fp);}
              memcpy(&tmp,buf,sizeof(int));
              q=tmp;
              if(q<20){
                fclose(fp);
                fclose(ft);
                remove("index");
                rename("temp","index");
                fp=fopen("index","a+");
                ft=fopen("temp","a+");
                while(ftell(fp)<512*(n-1)){
                  putc(getc(fp),ft);}
                for(i=0;i<=sizeof(int)-1;i++){
                  ch=fread(&buf[i],1,1,fp);}
                memcpy(&mem_i[0],buf,sizeof(int));
                mem_i[1]=q+1;
                fseek(fp,175,SEEK_CUR);
                for(j=0;j<=19;j++){
                  for(i=0;i<=sizeof(int)-1;i++){
                    ch=fread(&buf[i],1,1,fp);}
                  memcpy(&mem_i[j+2],buf,sizeof(int));}
               fseek(fp,512*(n-1)+8,SEEK_SET);
               for(j=0;j<=21;j++){
                 ch=fread(mem[j],9,1,fp);}
               fl=1;
               i=0;
               tmp=0;
               while(fl==1 && i<(q-1)){
                 test_1=strncmp(key,mem[i],9);
                 if(test_1>0){
                   test_2=strncmp(key,mem[i+1],9);
                   if(test_2<0){  
                     fl=0;}}
                 else{
                   tmp=1;
                   fl=0;}
                 i++;}
               if(fl==1){
                 mem_i[q+2]=b2;
                 strcpy(mem[q],key);}
               if(fl==0){
                 for(j=(q-1);j>=i-1*tmp;j--){
                   mem_i[j+4]=mem_i[j+3];
                   strcpy(mem[j+1],mem[j]);}
                 mem_i[j+4]=b2;
                 mem_i[j+3]=b1;
                 strcpy(mem[j+1],key);}   
              fwrite(&mem_i[0],sizeof(int),1,ft);
              fwrite(&mem_i[1],sizeof(int),1,ft);
              for(i=0;i<=18;i++){
                fwrite(mem[i],1,9,ft);}
              for(i=2;i<=22;i++){
                fwrite(&mem_i[i],sizeof(int),1,ft);}
              for(i=1;i<=249;i++){
                putc(0,ft);}
              fseek(fp,512*n,SEEK_SET);
              fseek(ft,512*n,SEEK_SET);
              while(feof(fp)==0){
                tmp=getc(fp);
                if(tmp!=-1){
                  putc(tmp,ft);}}
                finished=1;}
              else{                                                         /* If parent is full , we split again */
                fclose(fp);
                fclose(ft);
                remove("index");
                rename("temp","index");
                fp=fopen("index","a+");
                ft=fopen("temp","a+");
                while(ftell(fp)<512*(n-1)){
                  putc(getc(fp),ft);}
               for(i=0;i<=sizeof(int)-1;i++){
                 ch=fread(&buf[i],1,1,fp);}
               memcpy(&mem_i_t[0],buf,sizeof(int));
               mem_i[1]=q+1;
               fseek(fp,175,SEEK_CUR);
               for(j=0;j<=19;j++){
                 for(i=0;i<=sizeof(int)-1;i++){
                   ch=fread(&buf[i],1,1,fp);}
                 memcpy(&mem_i_t[j+2],buf,sizeof(int));}
               fseek(fp,512*(n-1)+8,SEEK_SET);
               for(j=0;j<=19;j++){
                 ch=fread(mem_t[j],9,1,fp);}
               fl=1;
               i=0;
               tmp=0;
               while(fl==1 && i<q){
                 test_1=strncmp(key,mem_t[i],9);
                 if(test_1>0){
                   test_2=strncmp(key,mem_t[i+1],9);
                   if(test_2<0){
                     fl=0;}}
                 else{
                   tmp=1;
                   fl=0;}
                 i++;}
               tmp1=ftell(fp);
               fseek(fp,0,SEEK_END);
               b2=ftell(fp)/512;
               fseek(fp,tmp1,SEEK_SET);
               if(fl==1){
                 mem_i_t[q+3]=b2;
                 strcpy(mem_t[q+1],key);}
               if(fl==0){
                 for(j=q-1;j>=i-tmp;j--){
                   mem_i_t[j+4]=mem_i_t[j+3];
                   strcpy(mem_t[j+1],mem_t[j]);}
                 //mem_i_t[j+3]=b1;
                 mem_i_t[j+4]=b2;
                 strcpy(mem_t[j+1],key);}
               tmp=1;
               fwrite(&tmp,sizeof(int),1,ft);
               tmp=10;
               fwrite(&tmp,sizeof(int),1,ft);
               for(i=0;i<=8;i++){
                 fwrite(mem_t[i],1,9,ft);}
               for(i=1;i<=90;i++){
                 putc(0,ft);}
               for(i=2;i<=11;i++){
                 fwrite(&mem_i_t[i],sizeof(int),1,ft);}
               for(i=1;i<=40;i++){
                 putc(0,ft);}
               for(i=1;i<=249;i++){
                 putc(0,ft);}
               fseek(fp,324,SEEK_CUR);
               while(feof(fp)==0){
                 tmp=getc(fp);
                 if(tmp!=-1){
                   putc(tmp,ft);}}
               tmp=1;
               fwrite(&tmp,sizeof(int),1,ft);
               tmp=11;
               fwrite(&tmp,sizeof(int),1,ft);
               for(i=0;i<=9;i++){
                 fwrite(mem_t[i+10],1,9,ft);}
               for(i=1;i<=81;i++){
                 putc(0,ft);}
               for(i=12;i<=22;i++){
                 fwrite(&mem_i_t[i],sizeof(int),1,ft);}
               for(i=1;i<=79;i++){
                 putc(0,ft);}
               for(i=1;i<=214;i++){
                 putc(0,ft);}
               b1=n;
               strcpy(key,mem_t[8]);}}
          }while(finished==0); 
          fclose(fp);
          fclose(ft);
          remove("index");
          rename("temp","index");
          fp=fopen("index","a+");}}
      fclose(fr);
      fr=fopen("root_index","w+");
      fwrite(&root,sizeof(int),1,fr);            
      free(buf);
      free(s);
      fclose(fr);
      fclose(fp);
      //fclose(f);
    }
    
    main(){
      FILE *f,*fp,*fr;
      int i=1,ch,a[1],b[1],j;
      char mem[9];
      f=fopen("credit3.bin","rb");
      fp=fopen("index","w+");
      fr=fopen("root_index","w+");
      ch=fread(mem,9,1,f);
      a[0]=0;
      b[0]=1;
      fwrite(a,sizeof(int),1,fp);
      fwrite(b,sizeof(int),1,fp);
      fwrite(mem,1,9,fp);
      for(j=1;j<=189;j++){
        putc(0,fp);}
      a[0]=1;
      fwrite(a,sizeof(int),1,fp);
      for(j=1;j<=302;j++){
        putc(0,fp);}
      a[0]=1;
      fwrite(&a,sizeof(int),1,fr);
      fclose(fp);
      fclose(fr);
      while(feof(f)==0){
        fseek(f,51*i,SEEK_SET);
        i++;
        ch=fread(mem,9,1,f);
        insert(mem);}
      fclose(f);
    }

  2. #2
    DESTINY BEN10's Avatar
    Join Date
    Jul 2008
    Location
    in front of my computer
    Posts
    804
    I dont know anything about trees but I can only say one thing indent your code properly.
    HOPE YOU UNDERSTAND.......

    By associating with wise people you will become wise yourself
    It's fine to celebrate success but it is more important to heed the lessons of failure
    We've got to put a lot of money into changing behavior


    PC specifications- 512MB RAM, Windows XP sp3, 2.79 GHz pentium D.
    IDE- Microsoft Visual Studio 2008 Express Edition

  3. #3
    Registered User
    Join Date
    Oct 2008
    Location
    TX
    Posts
    2,059
    Is this the iterative version of the recursive b-tree algorithm? There are lots of things wrong with this code besides whatever's on line 26 so for starters do your best to make it legible for others by following good programming styles like indentation, line spacing, etc. Read the board's faq which has an article on how to go about writing good programming style code.

  4. #4
    Registered User
    Join Date
    Jun 2009
    Posts
    4
    Well except from the appearance of the code could you help solve this?If there are other errors also as in line 26 or so please tell me where you see them.I am not a beginner and my friend is not a beginner also.We are students and we try to manage to do this project in a correct manner.Any help would be thankfull.This is the iterative version of a B+ tree.

  5. #5
    Registered User
    Join Date
    Jun 2009
    Posts
    4
    This is the file i open with fopen..
    Code:
    http://rapidshare.com/files/247731646/credit3.bin

  6. #6
    Banned ಠ_ಠ's Avatar
    Join Date
    Mar 2009
    Posts
    687
    I can't read this ........, you seriously need to break it up into much smaller functions
    ╔╗╔══╦╗
    ║║║╔╗║║
    ║╚╣╚╝║╚╗
    ╚═╩══╩═╝

  7. #7
    Registered User
    Join Date
    Oct 2008
    Posts
    115
    Quote Originally Posted by nicolassp View Post
    Well except from the appearance of the code could you help solve this?If there are other errors also as in line 26 or so please tell me where you see them.I am not a beginner and my friend is not a beginner also.We are students and we try to manage to do this project in a correct manner.Any help would be thankfull.This is the iterative version of a B+ tree.
    If you want experts here to help you properly try to help them as well to understand your code properly. Indent it, divide the processes using functions.

  8. #8
    Banned ಠ_ಠ's Avatar
    Join Date
    Mar 2009
    Posts
    687
    lol, experts
    ╔╗╔══╦╗
    ║║║╔╗║║
    ║╚╣╚╝║╚╗
    ╚═╩══╩═╝

  9. #9
    Registered User slingerland3g's Avatar
    Join Date
    Jan 2008
    Location
    Seattle
    Posts
    603
    I would review your use of memcpy(). Also some good tools to read/google/bing up on and apply

    indent
    splint

  10. #10
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by nicolassp View Post
    Well except from the appearance of the code could you help solve this? [...] We are students and we try to manage to do this project in a correct manner.
    No you aren't "managing this in a correct manner". That is some of the most disgusting/ridiculous code I have ever seen. No surprise that you are having problems finding a problem. I would bet $$$ you will solve half of them just by rewriting this in a sane way.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  11. #11
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Is this hand-written code or machine generated? There are FAR too many magical numbers in there, and as pointed out, one huge function isn't right here.

    Indeed, if you want help, make the code tidy, use sensible variable names.

    Don't declare all of the variables in one line - particularly do not mix initialized and uninitialized variables.

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  12. #12
    Registered User ssharish2005's Avatar
    Join Date
    Sep 2005
    Location
    Cambridge, UK
    Posts
    1,732
    Oh my god! You get the very bad code indentation award for this year. Congratulations!

    In addition to what other said, just place snaps of your code, rather than just dumping the whole lot and expecting us to go all through code. You wouldn't get much help.

    -ssharish
    Life is like riding a bicycle. To keep your balance you must keep moving - Einstein

  13. #13
    and the hat of sweating
    Join Date
    Aug 2007
    Location
    Toronto, ON
    Posts
    3,545
    All you'd need to do is make all your variables global and it would look just like something esbo might write.
    "I am probably the laziest programmer on the planet, a fact with which anyone who has ever seen my code will agree." - esbo, 11/15/2008

    "the internet is a scary place to be thats why i dont use it much." - billet, 03/17/2010

  14. #14
    Guest Sebastiani's Avatar
    Join Date
    Aug 2001
    Location
    Waterloo, Texas
    Posts
    5,708
    >> I am not a beginner and my friend is not a beginner also.We are students and we try to manage to do this project in a correct manner.

    You may not be a beginner, but you are far from understanding proper software design. This is as bad as it gets.

    >> All you'd need to do is make all your variables global and it would look just like something esbo might write.

    Indeed.
    Code:
    #include <cmath>
    #include <complex>
    bool euler_flip(bool value)
    {
        return std::pow
        (
            std::complex<float>(std::exp(1.0)), 
            std::complex<float>(0, 1) 
            * std::complex<float>(std::atan(1.0)
            *(1 << (value + 2)))
        ).real() < 0;
    }

  15. #15
    Algorithm Dissector iMalc's Avatar
    Join Date
    Dec 2005
    Location
    New Zealand
    Posts
    6,318
    Quote Originally Posted by nicolassp View Post
    Well except from the appearance of the code could you help solve this?If there are other errors also as in line 26 or so please tell me where you see them.I am not a beginner and my friend is not a beginner also.We are students and we try to manage to do this project in a correct manner.Any help would be thankfull.This is the iterative version of a B+ tree.
    You're making a bad assumption there. You're assuming that the bug is not a result of the indentation and highly compressed coding style itself. It could easily be that one bracket is in the wrong place and by forcing the same horrible coding style on us, we fail to see the same thing that you're failing to see.
    If the code is formatted properly then we might see the obvious problem. Of course for that matter you might also see the obvious problem.
    That's over 8 screens full of code in that function, even as highly squashed up as it is. It's no wonder you can't see the bug like that, but don't expect anyone else to either.

    Would you want to work with code that has five newlines between every line of code? Don't force the opposite on us and expect to get very far.
    My homepage
    Advice: Take only as directed - If symptoms persist, please see your debugger

    Linus Torvalds: "But it clearly is the only right way. The fact that everybody else does it some other way only means that they are wrong"

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Replies: 3
    Last Post: 04-26-2009, 08:54 AM
  2. Help Appreciated
    By cboard_member in forum C++ Programming
    Replies: 10
    Last Post: 08-02-2005, 06:31 AM
  3. Simple question. Help will be appreciated.
    By wickedclownz in forum C++ Programming
    Replies: 2
    Last Post: 06-19-2003, 02:18 AM
  4. C++ Programs -- Any input appreciated
    By Kyoto Oshiro in forum Game Programming
    Replies: 0
    Last Post: 02-27-2002, 11:22 PM
  5. I need help..anything will be appreciated
    By Unregistered in forum C++ Programming
    Replies: 4
    Last Post: 12-02-2001, 10:55 AM

Tags for this Thread