Anonymní profil Dutch77 – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Dutch77 – Programujte.comAnonymní profil Dutch77 – Programujte.com

 

Příspěvky odeslané z IP adresy 92.62.224.–

Dutch77
C / C++ › Dynamicke pole - vypis
13. 11. 2012   #166668

:D no jo vlastně... Díky za pomoc, už jsem z těch ukazatelů zmagořenej :)

Dutch77
C / C++ › Dynamicke pole - vypis
13. 11. 2012   #166661

Díky, (*pole)[i] je přesně ta chyba :)

Já více méně testuju, co c++ umí. Teprve s tím začínám.

Mám funkci main, tam si nadefinuju dynamicke pole a pak volam dalsi funkci, ktera v pripade, ze je pole maly, tak ho udela vetsim a vlozi do nove vytvoreny pameti hodnotu. Mno a pokud chci, aby tam ta hodnota zustala a nesmazala se mi pri skonceni fce, tak musim zapisovat jakoby o uroven vys. Proto ty dva pointery. Jeden ukazuje do dynamickeho pole v mainu a druhy ukazuje na dynamicke pole. Proto tam mam dva ukazatele.

Dutch77
C / C++ › Dynamicke pole - vypis
13. 11. 2012   #166649

vypis(pocetPrvkuVPoli, &dynamicke_pole);

void(int pocet, int** pole)
{
for(int i = 0; i < pocet;i++)
cout << *pole[i] << endl;
}

pole[0]0x3e0fb8
pole[1]0x3e0fbc
<- před zvětšením pole

pole[0]0x3e1030
pole[1]0x3e1034
<- vytvoření a zápis do nového pole

pole[0]0x3e1030
pole[1]0x413540
<- pole[1] ve funkci vypis(pocetPrvkuVPoli, &dynamicke_pole);
ukazuje nesmyslně (nebo spíš smyslně, jenom nevím proč :D) někam do háje.

Mimo funkci vypis, pole funguje dobre a prvky vypisuje... Neni mi jen jasne, proc si skace nekam po pameti jak chce :)  

Programátor
Inzerce › Hledám programátory pro Drup…
31. 10. 2012   #165652

#1 Programátor


Ještě prosím mě kontaktujte na: alecram.eniy@gmail.com

Děkuji moc.

Programátor
Inzerce › Tvorba mobilních aplikací pr…
31. 10. 2012   #165620

Nabízím tvorbu mobilních aplikací pro Android a iOS. Nabízím spolehlivý přístup a letité zkušenosti. 

Pro více informací mě prosím kontaktujte na emailu: info@hedmon.cz

Budu se těšit na spolupráci.

Programátor
Inzerce › Hledám programátory pro Drup…
31. 10. 2012   #165619

Dobrý den,

hledám zkušené programátory pro Drupal, WordPress, Prestashop a Joomla. Požaduji znalosti ve tvorbě webů a také kódování šablon pro tyto systémy. 

Prosím, aby se mi ozývali ti, kteří mají zkušenosti alespoň v jednom z těchto systémů a aby uvedli, o který systém se jedná a prosím také o přiložení referencí a několika informací o Vás a Vašich zkušenostech.

V případě spokojenosti, možnost dlouhodobé spolupráce.

Děkuji předem za všechny nabídky, odpovím pouze vybraným zájemcům.

Dutch77
C / C++ › Pole řetězců se samo přepisuje
23. 10. 2012   #165147

#2 zlz
Vůbec nemám páru jak... Potřebuju to nějak číslovat, abych mohl přidávat další slova pod nějakým ID, proto se dlabu v poli. :/
Sorry asi jsem moc lama, ale docela mi dochází čas. Nemáte nějaký tip jak to předělat v tomhle smyslu polí, aby ukazatele ukazovaly kam mají?

Dutch77
C / C++ › Pole řetězců se samo přepisuje
22. 10. 2012   #165145

Dobrý den,

v C už nějaký čas amatérsky dělám, ale teď jsem se na dost hodin sekl na jednom problému.

Dělám úplně stupidní slovníček... Nějak jsem se to snažil splácat, ale zasek jsem se na tom, že když přidám slovo, tak se sice přidá, ale jakmile přidám jiné nové, tak se přepíše i to předešlé, co jsem přidal. Prosím o radu, díky. :/
 

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <vector>

using namespace std;


void options(void);
void print_dictionary(void);
char *add_word(void);
void find_word(void);

char *dictionary[100];
char cz[15];
char en[15];

    czech[0] = "kocka";english[0] = "cat";
    czech[1] = "pes";english[1] = "dog";
    czech[2] = "kachna";english[2] = "duck";

std::vector<char*> czech(100);
std::vector<char*> english(100);


int main()
{

    dictionary[0] = "auto";
    dictionary[1] = "kachna";
    dictionary[2] = "zidle";

    while(1)
    {
    options();
    }

}



void options(void)
{
    int i;

    cout << "1. Hledat slovo" << endl;
    cout << "2. Vypsat ulozena slova" << endl;
    cout << "3. Pridat slovo do slovniku" << endl;
    cout << "4. Odebrat slovo ze slovniku" << endl;
    cout << "5. Ukoncit program" << endl << endl;


    cout << "Zadejte volbu: ";
    cin >> i;
    cout << endl;

    switch (i) {
        case 1:
        /* 1. Hledat slovo */
        find_word();

        break;

        case 2:
        /* 2. Vypsat ulozena slova */
        print_dictionary();

        break;

        case 3:
        /* 3. Pridat slovo do slovniku */
        add_word();

        break;

        case 4:
        /* 4. Odebrat slovo ze slovniku */

        break;

        default:
        /* 5. Ukoncit program */
        system("CLS");
        break;

        }
}


void print_dictionary(void)
{
    /* Cyklus zjistujici nejblizsi volnou pozici */
    for (int empty_position = 0; czech[empty_position] != 0; empty_position++) {
//////////////// !!!!!!!!!!!!!!!!!!!!!!!!  <- jakmile nejaky smazes, tak jsem v riti :D
        cout << czech[empty_position] << "\t\t\t" << english[empty_position] << endl;
    }
}


char * add_word()
{
    int empty_position;

    // Cyklus zjistujici nejblizsi volnou pozici //
    for (empty_position = 0; czech[empty_position] != 0; empty_position++);

    cout << empty_position << endl;

    cout << "Zadejte ceske slovo: " << endl;
    cin >> cz;
    czech[empty_position] = cz;

    cout << "Zadejte anglicke slovo: " << endl;
    cin >> en;
    english[empty_position] = en;

    for (int empty_position = 0; czech[empty_position] != 0; empty_position++) {
//////////////// !!!!!!!!!!!!!!!!!!!!!!!!  <- jakmile nejaky smazes, tak jsi v riti :D
        cout << empty_position << "\t" << czech[empty_position] << "\t\t\t" << english[empty_position] << endl;
    }


}


void find_word(void)
{
    char word[15];
    int condition = 0;
    cout << "Zadejte slovo, ktere chcete hledat:" << endl;
    cin >> word;

    for(int i = 0;strcmp(word, dictionary[i]) == 0; i++)
        {
        cout << "Anglicky preklad slova " << word << " je: " << dictionary[i] << endl << endl;
        condition = 1;
        }
    for(int j = 0;strcmp(word, dictionary[j]) == 0; j++)
        {
        cout << "Cesky preklad slova " << word << " je: " << dictionary[j] << endl << endl;
        condition = 1;
        }
    if(condition == 0)
        {
        cout << "Zadane slovo slovnik nezna" << endl << endl;
        }
}

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý