Witamy na forum PC Format Zapraszamy do REJESTRACJI


Użytkownicy przeglądający ten wątek: 1 gości

[C++] Działanie na tablicy znakowej

#1
[C++] Działanie na tablicy znakowej
Witam,
Jak by ktoś mógł pomoc była bym bardzo wdzięczna. Chciała bym wiedzieć jak mam np char []="123.4" a chciała bym stworzyć z tego char []="0123.4" da się tak? w C++. Z góry dziękuje Wesoły
 System operacyjny: windows_eight Przeglądarka: chrome
#2
RE: [C++] Działanie na tablicy znakowej
Witam, proszę na przyszłość lepiej tytułować wątki. Co dokładnie masz na myśli? Chcesz dopisać 0 na początek istniejącego napisu?
 System operacyjny: linux_ubuntu Przeglądarka: firefox
#3
RE: [C++] Działanie na tablicy znakowej
Dzięki będę pamiętać.
Chce stworzyć nowa tylko zwiększonym rozmiarem o jeden i by na pierwszym miejscu było to 0.
 System operacyjny: windows_eight Przeglądarka: chrome
#4
RE: [C++] Działanie na tablicy znakowej
można wpisać normalnie zero '0' , to nie jest to samo co '\0', a żeby powiększyć istniejącą tablicę ;-;
zrób sobie nową
 System operacyjny: windows_seven Przeglądarka: chrome
#5
RE: [C++] Działanie na tablicy znakowej
Jeśli to jest statyczna tablica, to nie zwiększysz jej rozmiaru. Najprościej byłoby zastąpić tablicę znakową klasą string - wtedy dopisanie zera na początek będzie banalne.
 System operacyjny: linux_ubuntu Przeglądarka: firefox
#6
RE: [C++] Działanie na tablicy znakowej
Musi być to zrobione w tablicy znakowej. Zrobiłam tak możne być? Tylko nie wiem jak dać z tego funkcje do jak dałam nie zwraca mi wyniku.

Kod:
char s[]="12.3";
   int n=6;
   char* s_nowa=new char[n];
       for(int i=0; i<2; i++)
{
       s_nowa[i]='0';
       /** przypisanie dodatkowych zer na początku ***/
       for(int j=0, i=2; j<n; j++,i++)
           {
               s_nowa[i]=s[j];  /*** uzupełnianie reszta liczb ****/
               s_nowa[n]='\0';
           }
}
 System operacyjny: windows_eight Przeglądarka: chrome
#7
RE: [C++] Działanie na tablicy znakowej
Ale ty tutaj nie napisałaś żadnej funkcji, napisz ją, funkcja zwraca coś za pomocą instrukcji return, najczęściej jest to liczba, a co ma u ciebie zwracać?, przekarz do funkcji tablice.
np. nagłówek funkcji
Kod:
int funkcja(const char *W1)
i dopiero tutaj działaj na niej, tj. zapisz wartośći do nowej tablicy
 System operacyjny: windows_seven Przeglądarka: chrome
#8
RE: [C++] Działanie na tablicy znakowej
Wiem ze nie napisałam tam, tu jest:

Kod:
#include <iostream>
#include <cstring>

using namespace std;
char* wypisz (char* s, int n)
{

    char* s_nowa=new char[n];
        for(int i=0; i<2; i++)
{
        s_nowa[i]='0';
        /** przypisanie dodatkowych zer na poczatku ***/
        for(int j=0, i=2; j<n; j++,i++)
            {
                s_nowa[i]=s[j];  /*** uzupełnianie reszta liczb ****/
                s_nowa[n]='\0';
            }
}
return s_nowa;
}
int main()
{
    char s_nowa;
    char s[]="12.3";
    int n=6;
    wypisz( s,n);
    cout<<s_nowa;
}

ale jak np chce wypisać ta wartość z tego w main to się nie da. Jak ja wypisać pod zmienia? Coś w przekazaniu jest zle?
 System operacyjny: windows_eight Przeglądarka: chrome
#9
RE: [C++] Działanie na tablicy znakowej
Kod:
char *s_nowa = wypisz(s, n);
cout << s_nowa << endl;
delete[] s_nowa;  // żeby nie wyciekła pamięć
 System operacyjny: linux_ubuntu Przeglądarka: firefox
Programy: Polecane / Nowe / Inne




Podobne wątki ([C++] Działanie na tablicy znakowej)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Java- wypisanie liczb, które nie są podane w tablicy , wypisanie liczb z tablicy all? ccomp 10 20609 16.07.2017, 20:10
Ostatni post: ccomp
  Wyszukiwanie w tablicy soul1648 3 10240 01.04.2017, 14:26
Ostatni post: Ajgor
  [C] Zliczanie wystąpień liczb w tablicy PanKot 1 9918 01.11.2016, 18:20
Ostatni post: Szachista

Skocz do: