Xciąg_znaków -> 10ciąg_znaków
Ostatnio zmodyfikowano 2010-04-12 20:06
Steryd9339 Temat założony przez niniejszego użytkownika |
Xciąg_znaków -> 10ciąg_znaków » 2010-04-11 17:11:32 Witam! Chcę zrobić takie coś: Wprowadzam jakiś wyraz np. "ddt" I chcę żeby efektem końcowym był łańcuch z 10 znakami czyli "ddt "-ddt(3)+spacja(7)(w przypadku ddt bo w innych to będzie inaczej) a jeżeli łańcuch będzie dłuższy niż 10 znaków to go skróci do postaci 10 znaków.
|
|
WunM |
» 2010-04-11 17:51:45 To zrób. |
|
DejaVu |
» 2010-04-11 18:04:29 Jak wyżej z tym, że: http://kursy.ddt.pl/?LessonId=10. Poczytaj jeszcze o tablicach jak zapisywać dane, no ale to chyba wiesz skoro interesujesz się tekstem. Dodam, że istnieją również funkcje gotowe w bibliotece C do uzyskania tego co chcesz, ale z racji tego, że nie ma chętnych do rozwoju dokumentacji to nie podam nawet nazw funkcji bo i po co... skoro są google :) /edit: Zawsze możesz poszukać tutaj: http://cppreference.com |
|
franz |
» 2010-04-11 18:58:18 W Pascalu była taka funkcja length.W C++ wydaje mi się,że jest ona taka sama. Wpisz tekst (ddt) do zmiennej string,oblicz jej długość (zwraca int). Potem od liczby 10 odejmnij wartość length i np w pętli for wyświetl znak spacji x razy (x to różnica z odejmowanie 10 - length)
Mam nadzieje,że o to ci chodzi. Można to jeszcze zrobić na tablicach. |
|
Elaine |
» 2010-04-11 19:26:02 {,s,f}printf i łańcuch formatujący "%-10s"? |
|
pekfos |
» 2010-04-12 16:37:57 char * extend_to_10( char * s ) { int w = strlen( s ); char * e = new char[ 10 ]; for( int a = 0; a < 10; a++ ) { if( a > w ) e[ a ] = ' '; else e[ a ] = s[ a ]; } return e; } |
|
Elaine |
» 2010-04-12 17:53:42 Za bardzo kombinujesz... |
|
pekfos |
» 2010-04-12 18:09:30 Tak to jest jak się pisze na szybko.. char * extend_to_10( char * s, char t ) { int w = strlen( s ); char * e = new char[ 11 ]; for( int a = 0; a < 10; a++ ) { if( a >= w ) e[ a ] = t; else e[ a ] = s[ a ]; } e[ 10 ] = '\0'; return e; } teraz wyjaśnienie dla tych co nie zrozumieli kodu: parametr s to ciąg do rozszerzenia do 10 znaków(lub skrócenia do 10 znaków) a parametr t to znak, którym wypełnione będą puste pola(gdy s jest krótszy od 10) |
|
« 1 » 2 |