Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C#
  4. how can i write functions in String class without using any tools?

how can i write functions in String class without using any tools?

Scheduled Pinned Locked Moved C#
questioncsharptoolshelp
36 Posts 10 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Sajjad Izadi

    no but it's my homework :) and i have to write that till next two days!

    C Offline
    C Offline
    Christian Graus
    wrote on last edited by
    #27

    I think you need to re-read the assignment. You seem to be saying 'turn a string into a byte array without using any methods on the string class that would give you access to the contents of the string'.

    Christian Graus Please read this if you don't understand the answer I've given you. If you're still stuck, ask me for more information.

    1 Reply Last reply
    0
    • P Paul Conrad

      Didn't you mean to direct this to Sajjad? I'm not the one doing the assignment :-\

      "The clue train passed his station without stopping." - John Simmons / outlaw programmer "Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon

      C Offline
      C Offline
      Christian Graus
      wrote on last edited by
      #28

      Oh, I hate it when people do that...

      Christian Graus Please read this if you don't understand the answer I've given you. If you're still stuck, ask me for more information.

      P 1 Reply Last reply
      0
      • C Christian Graus

        Oh, I hate it when people do that...

        Christian Graus Please read this if you don't understand the answer I've given you. If you're still stuck, ask me for more information.

        P Offline
        P Offline
        Paul Conrad
        wrote on last edited by
        #29

        Oh well, no worries :-D

        "The clue train passed his station without stopping." - John Simmons / outlaw programmer "Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon

        1 Reply Last reply
        0
        • P Paul Conrad

          Christian Graus wrote:

          It sounds messy tho.

          Gearing him up for real world maintenance projects, I suppose.

          "The clue train passed his station without stopping." - John Simmons / outlaw programmer "Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon

          L Offline
          L Offline
          Lost User
          wrote on last edited by
          #30

          :laugh:

          P 1 Reply Last reply
          0
          • L Lost User

            :laugh:

            P Offline
            P Offline
            Paul Conrad
            wrote on last edited by
            #31

            I'll admit I have some code that is a maintenance nightmare, considered "job security" to a certain extent :rolleyes:

            "The clue train passed his station without stopping." - John Simmons / outlaw programmer "Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon

            1 Reply Last reply
            0
            • S Sajjad Izadi

              how can i make my string to char[] without using any built-in classes or prepared methods, += and = or 'foreach' in C#? in an other expression, i want to (have to) write trim, insert, concat, countOf(char c) and etc without using any of methods or classes or foreach and even += or + in C#. how is that? please help, thanks.

              G Offline
              G Offline
              Guffa
              wrote on last edited by
              #32

              Without using the built in members of the String class, you can't access it's data.

              Despite everything, the person most likely to be fooling you next is yourself.

              P 1 Reply Last reply
              0
              • C Christian Graus

                I think either the teacher is an idiot, or the OP is wrong in his understanding

                Christian Graus Please read this if you don't understand the answer I've given you. If you're still stuck, ask me for more information.

                D Offline
                D Offline
                Dave Kreskowiak
                wrote on last edited by
                #33

                Why does it have to be "or"?? Why not "and"?? ;)

                A guide to posting questions on CodeProject[^]
                Dave Kreskowiak Microsoft MVP Visual Developer - Visual Basic
                     2006, 2007, 2008

                1 Reply Last reply
                0
                • G Guffa

                  Without using the built in members of the String class, you can't access it's data.

                  Despite everything, the person most likely to be fooling you next is yourself.

                  P Offline
                  P Offline
                  PIEBALDconsult
                  wrote on last edited by
                  #34

                  I was just wondering whether or not you can with unsafe code... could be fun... :suss: Howsabout this :-D :

                  private unsafe static void
                  F
                  (
                  string S
                  ,
                  out char[] A
                  )
                  {
                  int index = 0 ;

                  fixed ( char\* s = S )
                  {
                      while ( s \[ index \] != '\\0' )
                      {
                          index++ ;
                      }
                  
                      A = new char \[ index \] ;
                  
                      fixed ( char\* a = A )
                      {
                          while ( index >= 0 )
                          {
                              a \[ index \] = s \[ index \] ;
                  
                              index-- ;
                          }
                      }
                  }
                  
                  return ;
                  

                  }

                  Or lambda expressions?

                  modified on Monday, July 7, 2008 11:47 PM

                  1 Reply Last reply
                  0
                  • S Sajjad Izadi

                    how can i make my string to char[] without using any built-in classes or prepared methods, += and = or 'foreach' in C#? in an other expression, i want to (have to) write trim, insert, concat, countOf(char c) and etc without using any of methods or classes or foreach and even += or + in C#. how is that? please help, thanks.

                    P Offline
                    P Offline
                    PIEBALDconsult
                    wrote on last edited by
                    #35

                    It could be an exercise intended to show that it can't be done. But probably it's poor communication.

                    1 Reply Last reply
                    0
                    • S Sajjad Izadi

                      how can i make my string to char[] without using any built-in classes or prepared methods, += and = or 'foreach' in C#? in an other expression, i want to (have to) write trim, insert, concat, countOf(char c) and etc without using any of methods or classes or foreach and even += or + in C#. how is that? please help, thanks.

                      P Offline
                      P Offline
                      PIEBALDconsult
                      wrote on last edited by
                      #36

                      Here are Left and Right Trim methods that don't access any methods of the String class, but I hope this isn't what the teacher is expecting.

                      private unsafe static void
                      LeftTrim
                      (
                      string Subject
                      ,
                      System.Collections.Generic.HashSet<char> Chars
                      )
                      {
                      fixed ( char* subject = Subject )
                      {
                      int* length = (int*) subject - 1 ;
                      int front = 0 ;
                      int back = 0 ;

                          while
                          (
                              ( front < \*length )
                          &&
                              ( Chars.Contains ( \*(subject + front) ) )
                          )
                          {
                              front++ ;
                          }
                      
                          while ( front < \*length )
                          {
                              \*(subject + back++) = \*(subject + front++) ;
                          }
                      
                          \*length = back ;
                      }
                      
                      return ;
                      

                      }

                      private unsafe static void
                      RightTrim
                      (
                      string Subject
                      ,
                      System.Collections.Generic.HashSet<char> Chars
                      )
                      {
                      fixed ( char* subject = Subject )
                      {
                      int* length = (int*) subject - 1 ;

                          while
                          (
                              ( \*length >= 0 )
                          &&
                              ( Chars.Contains ( \*(subject + \*length - 1) ) )
                          )
                          {
                              (\*length)-- ;
                          }
                      }
                      
                      return ;
                      

                      }

                      1 Reply Last reply
                      0
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • World
                      • Users
                      • Groups