The UNIX and Linux Forums  
Hello and Welcome-tól az Egyesült Államokat, hogy az UNIX és Linux Forums? Köszönjük, hogy meglátogatta és csatlakozik Globális Közösség.

Go Back   A UNIX és Linux Forums > Top Fórumok > Magas szintű Programozás
.
google unix.com



Magas szintű Programozás Post kérdések C, C + +, Java, SQL, és más programozási nyelvek itt.

Több, UNIX és Linux fórum témák Ön által talált Hasznos
Szál Thread Starter Fórum Válaszok Utolsó hozzászólás
Helyettesítő változó külső kép oneillc9 Shell programozás és Scripting 1 07-31-2008 04:12 PM
Helyettesítő neyo Shell programozás és Scripting 1 03-08-2008 10:08 AM
Helyettesítő az értéke változó Sed jyotipg Shell programozás és Scripting 1 09-26-2006 10:54 AM
Helyettesítő változó aktuális idő jhansrod Shell programozás és Scripting 4 11-20-2005 08:20 PM
Helyettesítő shell változók suds19 Shell programozás és Scripting 1 10-16-2002 09:55 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Téma eszközök Keresés a téma Rate Thread Megjelenítési módok
  #1 (permalink)  
Old 08-21-2008
cleopard cleopard is offline
Regisztrált felhasználó
  
 

Join Date: Dec 2006
Hozzászólások: 29
helyett az egyik a másik

Van egy Linux C program vagyok írásban, hogy van egy szakasz, ahol egy nagy sztring, szükségem van arra, hogy egy kisebb karakterlánc a másikra, és az valószínűleg nem lesz azonos méretű.

Például, ha van egy szöveg:

"Nowisthetimeforallgoodmen"

és szeretnék helyettesítő "nagy" a "minden" a fő string méretének növekedése:

"Nowisthetimeformostgoodmen"


vagy helyettesítő hogy méretének növelése a fő szöveg:

"Nowisthetimefornogoodmen"


Azt gondoltam, lehet, hogy egyes vélemények arról, hogy mi lenne a legjobb, valami ilyesmi mellett még nehézkes módon csinálja. Már néztem a C string feladatokat lát ha van valami, ami hasznos lehet, de én nem igazán látok.

Akármi segít lenne méltányol.
  #2 (permalink)  
Old 08-21-2008
Shamrock shamrock is offline Forum Advisor  
Regisztrált felhasználó
  
 

Join Date: Oct 2007
Helyszín: USA
Posts: 750
Pillantás a strstr () és strspn () függvényt.
  #3 (permalink)  
Old 08-21-2008
félelmetes redoubtable is offline
Regisztrált felhasználó
  
 

Join Date: Aug 2008
Helyszín: Portugália
Posts: 242
Itt valóban sok milyen módon teheti ezt.

A első probléma A mérete a sztring (char array). Ehhez vagy használja a rögzített hosszúságú tömb, amely kötődik a vár nem lehet túllépni (512 bytes például), vagy ha tudja a dinamikus hosszúságú memória (malloc () / calloc ()). Azt tanácsoljuk, hogy használd a malloc () csak végső megoldásként, mert lassabb / nehezebb fenntartani / hajlamos emberi hiba.

A második probléma nem választotta a megfelelő módja a helyettesítés. Ha helyettesítő karaktereket az azonos méretű akkor csak csinálja, mint a közvetlen
Kód:
char * p;
if ((p = strstr (array, "isthetime")) != NULL)
    strncpy (p, "new chars", strlen ("new chars"));
és ne okozzon problémát. Másrészt, ha te vagy helyettesítő karakterek különböző hosszúságú say "AAA" a "AAAA" szükség van arra, hogy a helyettesítő majd felülírja az egyik elem a tömbben. Ha meg akarja tartani, hogy az elemet le kell másolni a tömb egy ideiglenes tömböt, majd strncpy () vissza az eredeti tömb után felváltó történik.

Te harmadik probléma van, amelyek jóval az óvatosság megszüntetéséről byte '\ 0' a tömbben. Ha nem elég óvatos, lehet, hogy felülírja azt, és felejtse el a helyébe, ami viszont oda vezethet, hogy a váratlan körülmények között.

PS: tudod is használ regcomp () és regexec () a minta egyezési / cserélni.
Closed Thread

Könyvjelzõk

Téma eszközök Keresés a téma
Keresés a téma:

Részletes keresés
Megjelenítési módok Rate this thread
Rate this thread:

Posting szabályzat
Ön nem post new threads
Ön nem post válaszok
Ön nem post Csatolmányok
Ön nem szerkeszteni az üzeneteidet

BB kód van Be
Smilies vannak Be
[IMG] kód Be
HTML kód Ki
Trackbacks vannak Be
Pingbacks vannak Be
Refbacks vannak Be




Minden idő GMT -4. Az idő most 04:11 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Nyelvre lefordítva Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
A UNIX és Linux Fórum Tartalom Copyright © 1993-2009. Minden jog Reserved.Ad menedzsment RedTyger

Content Relevant URLs by vBSEO 3.2.0