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

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

 

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

.NET › Unit test
10. 7. 2018   #380936

#1 j.schneider
tomu na co se ptáš sice nerozumím, ale jediné co ti můžu poradit aby se ti někdo snažil pomoct je: pro vkládání kódu je tu tlačítko se symbolem <?. 

Návrhy na vylepšení › Spam - řešíme
9. 7. 2018   #380695

#3 Curo
nestačila by reCAPTCHA pouze pro neregistrované?

.NET › Jak je to s těmi { závorkami…
21. 6. 2018   #221436

#1 Dumbo
KIIV už sice odpověděl, ale když už jsem to napsal.. (vypadl mi net)

Například budeš mít nějakou podmínku:

//pokud se podmínka splní, provede se VykonejA(), VykonejB(), ale vždy VykonejD()
if(i == j)
{
  VykonejA();
  VykonejB();
}
else
VykonejC();
VykonejD();
//pokud ne, provede se VykonejC(), ale vždy VykonejD()

pokud to uděláš takto: 

if(i == j)
{
  VykonejA();
  VykonejB();
}
else 
{
  VykonejC();
}
VykonejD();
//provede se vše jako v předchozím případě, jen to může někomu připadat přehlednější

a poslední příklad: 

//pouze pokud se podmínka splní, provede se VykonejA(), ale vždy VykonejB()
if(i == j)
  VykonejA();
VykonejB();

{} závorky jsou moc dobrá věc, a mnohem přehlednější než v jiných jazycích např. begin / end

C / C++ › Procedura void nahradit
13. 6. 2018   #221346

#3 normy101
No pokud by šlo o nahrazení slova se shodnou velikostí bloku, tak stačí jen přepis dat v souboru. To je jednoduché, ale nejspíš málo pravděpodobné.

Ale není ani moc složité to, co píše kolega. V obou případech je potřeba nastudovat práci se soubory.

Taky se můžeš zaseknout na komplikacích s kódováním textu (tedy pokud může být různé).

Když píšeš takovýto dotaz je dobré uvést v čem to píšeš.

C / C++ › Vytvoření knihovny
29. 5. 2018   #221172

#1 normy101

už jsem to tady jednou vysvětloval.. 

Pro C to budeš muset trochu upravit, ale na to přijdeš.

.NET › Co programovat ,jako začáteč…
27. 5. 2018   #221154

#7 Josef
Jedna možnost je, že budeš kreslit na PictureBox linky, křížky a kolečka pomocí Graphics.DrawLine a DrawCircle apd. nebo si vytvoříš obrázky: prázdného políčka, s křížkem, kolečkem.. , uložíš je do resources (v cz verzi "prostředků" ve vlastnostech projektu) a ty budeš kreslit na PictureBox pomocí DrawImage (volání: Properties.Resources.nazev)

OS - Windows › Win10 64/32bit
24. 5. 2018   #221120

Nechce se mi rozebírat (ne)výhody Linuxu o proti Windows.
Ale co se mi chce říct je, že ikdyž mám W10 na všech počítačích funkční tak, XP byly z uživatelského hlediska bezkonkurenčně nejlepší (s použitím Zune theme i nejhezčí a nejpřehlednější) systém.

Trochu doufám, že si můj povzdech přečetlo vedení MS a teď už mi budou dělat jen radost. ;)

.NET › Co programovat ,jako začáteč…
24. 5. 2018   #221117

#4 Josef

Nepužíváš žádné prográmky co by si se mohl pokusit napsat vlastním způsobem?
Např. kalkulačka, notepad, převody jednotek, výpočty nebo evidence něčeho, kopírování souborů...
nebo nějakou jednoduchou hru (jako asi nejlehčí mě napadá pexeso, nebo nějaká jiná stolní hra kde nejsou potřeba animace).

Mezi mé první programy patřily: prográmek na výpočet obvodů a obsahů těles, a program pro synchronizaci složek, aplikace pro generování textů.

To zkrátka záleží na tom co tě zajímá. Psát něco co bude k ničemu tě nebude bavit.
Předpokládám, že ses rozhodl učit programovat s toho důvodu, že chceš vytvářet vlastní software, ne proto, že chceš programovat.

Nikdo neříká, že tvé první programy musí být dokonalé. Chybami se člověk učí.

OS - Windows › Win10 64/32bit
15. 4. 2018   #220410

#1 Michal
1. protože je tam 64bit W7, bude tam procesor 64bit architekturou, takže tam dej 64bit Win. (dodatečně se to dá změnit přeinstalací win)

2. to záleží co na tom pc budeš dělat, na nějaké účetnictví nebo surfování po netu budou 4 GB stačit. Pokud bys dělal grafiku, tak bych přidal.

C / C++ › ImagingFactory WinCE
4. 4. 2018   #220223

#3 TomyB

Podle toho kódu to vypadá tak, že chceš upravit "hodnoty" RGB podle hodnoty A a přitom nastavení A zachovat?

Čeho chceš vlastně přesně dosáhnout?

btw: takto vypadá tvůj obrázek po odebrání G a B

Připojen obrázek.

(takže se jen špatně pohybuješ v paměti, nejde o 256 barev)

.NET › C# Combo Box
30. 3. 2018   #220186

#1 Martin 

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (comboBox1.SelectedIndex < 0)
            {
                label1.Text = string.Empty;
                label2.Text = string.Empty;
                label3.Text = string.Empty;
            }
            else
            {
                DataTable dt = (DataTable)comboBox1.DataSource;
                label1.Text = (string)dt.Rows[comboBox1.SelectedIndex][0];
                label2.Text = (string)dt.Rows[comboBox1.SelectedIndex][1];
                label3.Text = (string)dt.Rows[comboBox1.SelectedIndex][2];
            }
        }

Po vkládání kódu používej tlačítko <?

.NET › C# Xaml Serial Line read
12. 3. 2018   #219959

#5 JirkaX
To bude nejlepší. Zabal složku projektu do ZIPu a ulož třeba sem

.NET › C# Xaml Serial Line read
10. 3. 2018   #219936

#3 JirkaX
Musím říct, že (a podle množství odpovědí na dvou fórech, nejsem jediný) pořád nevím s čím si nevíš vlastně rady. Podle toho, že tu zmiňuješ buffer a minule TextBox, tak si myslím, že pouze nevíš jak zobrazit hodnoty, které vrací port. 

Pokud je to tak, jak chápu já, tak by mělo stačit vytvořit metodu s argumentem ushort value, tuto hodnotu zobrazit v textboxu a mít Queue<ushort> history a tam ji přidat: 

history.Enqueue(value);
if (history.Count > 50) history.Dequeue();

a následně history zobrazit v ListBoxu. Celé toto si upravit pro použití v WPF (já WPF ani s porty nedělám, tak ti tu nechci psát ukázku, protože by to šlo jistě napsat elegantněji, než bych to dokázal já).

.NET › C# Xaml Serial Line read
9. 3. 2018   #219928

#1 JirkaX
Nevím jestli chápu na co se ptáš.

chytl jsem se tohoto:

Hlavní problém mám v tom, že data nechodí celá a když to chci dát do textBoxu tak to vynechává skáče mimo prostě nečitelné :( co s tím?

Takto přidáš (i více řádkový) text do textboxu: 

string str = "540\r\n540\r\n540\r\n540\r\n540\r\n";
textBox.AppendText(str);

Obsah TextBoxu bude vypadat takto: 

540
540
540
540
540

Případně pokud může ten řetězec obsahovat chyby, tak to můžeš ošetřit třeba takto: 

string text = "540\r\n540\r\n \r\n\r\n540\r\n540\r\n540\r\n";
string[] lines = text.Split(new char[] { '\n', '\r', ' ' }, StringSplitOptions.RemoveEmptyEntries); //tímto se odfiltrují nedostatky
foreach (string line in lines)
{
  textBox.AppendText(line);
  textBox.AppendText(Environment.NewLine);
}
.NET › Práce s texťákem v C++ do C#
21. 2. 2018   #219797

#5 ORION206
Tady jsem ti z nudy udělal ještě jednu ukázku:  

using System;
using System.Globalization;
using System.IO;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                ConvertFile("vstup.txt", "vystup.txt", -220.0f, 16.0f);
            }
            catch(Exception ex)
            {
                Console.WriteLine(ex.Message);
                Console.ReadKey();
            }
        }
        /// <summary>
        /// konverze souboru
        /// </summary>
        /// <param name="src">vstupní textový soubor</param>
        /// <param name="des">výstupní textový soubor</param>
        /// <param name="min_X">minimální povolená hodnota X</param>
        /// <param name="max_X">maximální povolená hodnota X</param>
        static void ConvertFile(string src, string des, float min_X, float max_X)
        {
            NumberFormatInfo nfi = new NumberFormatInfo()//nahrazuje změnu CurrentCulture
            {
                NumberDecimalSeparator = "."
            };

            using (StreamReader sr = new StreamReader(src))
            {
                using (StreamWriter sw = new StreamWriter(des, false))
                {
                    char[] del = new char[] { ' ' };
                    int row_number = 1; // 0
                    Radek soucasnyRadek;
                    string line;
                    while ((line = sr.ReadLine()) != null)
                    {
                        try
                        {
                            string[] ss = line.Split(del, StringSplitOptions.RemoveEmptyEntries);
                            soucasnyRadek.x = float.Parse(ss[0], nfi);
                            soucasnyRadek.y = float.Parse(ss[2], nfi);
                            soucasnyRadek.z = float.Parse(ss[4], nfi);
                            soucasnyRadek.r = float.Parse(ss[6], nfi);
                            soucasnyRadek.g = float.Parse(ss[9], nfi);
                            soucasnyRadek.b = float.Parse(ss[11], nfi);

                            if (soucasnyRadek.x >= min_X && soucasnyRadek.x <= max_X) //tady si udělěj porovnání jaké chceš
                            {
                                sw.WriteLine(soucasnyRadek.ToString(nfi));
                            }
                        }
                        catch (Exception)
                        {
                            Console.WriteLine("Chybný řádek: {0}", row_number);
                            throw; //pokud chceš konverzi při chybě ukončit
                        }
                        row_number++;
                    }
                }
            }
        }
    }

    public struct Radek
    {
        public float x;
        public float y;
        public float z;
        public float r;
        public float g;
        public float b;

        public string ToString(NumberFormatInfo nfi)
        {
            return string.Format(nfi, "{0} {1} {2} {3} {4} {5}", x, y, z, r, g, b);
        }
        //public override string ToString()//výchozí formát
        //{
        //    return string.Format("{0} {1} {2} {3} {4} {5}", x, y, z, r, g, b);
        //}
    }
}
.NET › Práce s texťákem v C++ do C#
21. 2. 2018   #219794

až teď jsem si všiml, jak máš řešeno WriteLine..

vkládat tam mezery zvlášť je zbytečné, stačí to udělat takto: 

WriteLine("{0} {1} {2} {3} {4} {5}", soucasnyRadek.x, soucasnyRadek.y, soucasnyRadek.z, 
 soucasnyRadek.r, soucasnyRadek.g, soucasnyRadek.b);

pokud tam nechceš vkládat jeden prázdný řádek, můžeš "\n" vynechat

.NET › Práce s texťákem v C++ do C#
20. 2. 2018   #219789

Tady je jednoduchá ukázka:

using System;
using System.Globalization;
using System.Threading;
using System.IO;

namespace ConsoleApp1
{
    class Program
    {
        const int X_VALUE = 0;
        const int Y_VALUE = 1;
        const int Z_VALUE = 2;
        const int REFLECT_VALUE = 3;
        const int R_VALUE = 4;
        const int G_VALUE = 5;
        const int B_VALUE = 6;

        static void Main(string[] args)
        {
            // aby to bralo tečku jako oddělovač
            Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");

            try
            {
                using (StreamReader sr = new StreamReader("vstup.txt"))
                {
                    using (StreamWriter sw = new StreamWriter("vystup.txt", false))
                    {
                        ConvertFile(sr, sw);
                    }
                }
            }
            catch(Exception ex)
            {
                Console.WriteLine(ex.Message);
                Console.ReadKey();
            }
        }

        static void ConvertFile(StreamReader src, StreamWriter des)
        {
            src.BaseStream.Seek(0, SeekOrigin.Begin);
            while (true)
            {
                string line = src.ReadLine();
                if (line != null)
                {
                    try
                    {
                        float[] data = Array.ConvertAll(line.Split(' '), Single.Parse);
                        if (data.Length > 6)
                        {
                            if(data[X_VALUE] < -3.0f) //tady si udělěj porovnání jaké chceš
                            {
                                des.WriteLine( string.Format("{0} {1} {2} {3} {4} {5} {6}",
                                                              data[0], data[1], data[2], data[3], data[4], data[5], data[6]));
                                //nebo pokud tam nechceš nic měnit: des.WriteLine(line);
                            }
                        }
                    }
                    catch (Exception) { }
                }
                else break;
            }
        }
    }
}
.NET › Práce s texťákem v C++ do C#
20. 2. 2018   #219788

#1 ORION206
to by celkem nebyl problém, ale hlavní chyba je v tom, že uvedený kód je špatně. (například vidím, že porovnáváš mez_X s něčím, přitom proměnné mez_X, mez_Y, mez_Z nemají přiřazenou hodnotu.) Takže by se to blbě přepisovalo.

Takže nejlépe bude když napíšeš co přesně má program dělat. Nebo to začni nějak montovat sám a pokud si nebudeš vědět rady s něčím konkrétním, tak se zeptáš.

ps, tady máš jednu z možností jak z pole udělat strukturu (pro začátečníka asi nejlépe pochopitelná)

    class Program
    {
        static void Main(string[] args)
        {
            float[] data_radku = new float[7]; //tady nějak data z řádku získáš (třeba tím splitem)
            Radek radek = new Radek(data_radku);
        }
    }

    struct Radek
    {
        public float x;
        public float y;
        public float z;
        public float odrazivost;
        public float r;
        public float g;
        public float b;

        public Radek(float[] data)
        {
            x = data[0];
            y = data[1];
            z = data[2];
            odrazivost = data[3];
            r = data[4];
            g = data[5];
            b = data[6];
        }
    };

Samozřejmě je nutné ošetřit chyby!

I když Nevím jestli je nutné tam vůbec tu strukturu dělat, s těmi daty by se mohlo pracovat rovnou v poli.

Photoshop › Zmeniť stred symbolu na písm…
20. 1. 2018   #219439
Photoshop › Zmeniť stred symbolu na písm…
19. 1. 2018   #219421

#1 John
Potreboval by som zmeniť stred radiačného symbolu na písmena

kvůli tobě doufám, že jsem jediný kdo vůbec nechápe o co usiluješ..

Hardware › V Photoshope nedostatk RAM
29. 12. 2017   #219147

#10 Sani
Zkrátka pokud máš 32 bitový software, tak ti větší RAM nepomůže (samozřejmě ani pokud ho spustíš na 64 bitovém OS).

Hardware › Harddisk 98%+ výkonu
29. 12. 2017   #219137

#1 HonzaF
Jak píše peter...

Jen na doplnění. Poslední dobou je častá takováto zátěž u Windows 10 při přípravě na aktualizace (zvláště ty skvělé a nezbytné půlroční update) + tím samozřejmě zaměstnají i antivir.

Hardware › V Photoshope nedostatk RAM
29. 12. 2017   #219136

#8 Sani
Tak pokud ti to nejde udělat ve PS, tak máš možnosti:

1. uložit to jako BMP (tam není žádná komprese) a do JPG to konvertovat jiným programem (pokud to ten program bude umět konvertovat z výchozího PSD formátu, tak to samozřejmě nemusíš ukládat i do BMP).

2. zmenšit obrázek tak, aby to šlo uložit

3. zkusit uložit jako PNG (ten by měl vyžadovat taky trochu míň paměti), ten u takto velkých obrázků může být ve výsledku menší než JPEG. (PNG nebude mít problém nikdo otevřít.)

4. Novější 64 bit PS, nebo použít jiný software.

Hardware › V Photoshope nedostatk RAM
28. 12. 2017   #219133

#6 Sani
pokud máš problém s pamětí, musíš zkusit zvolit jiný formát. (Pokud je v tvé verzi možnost ukládat jako PDF ten vyžaduje méně RAM, ale o hodně víc času pro výpočet.)

Pro uložení obrázku o takovéto velikosti do formátu JPEG se navýší potřebná paměť o zhruba 1GB (přesto že má výsledný obrázek pár MB).

Já než bych obrázek sprznil formátem JPEG, a chtěl šetřit místem, tak bych jej raději zmenšil ve photoshopu (pokud by bylo nutné jej zmenšovat) a pak uložil bezeztrátově například jako TIFF s kompresí LZW.

ps,  U PS je nedostatek paměti celkem běžným jevem.

Photoshop › Adobe Lightroom
22. 12. 2017   #219059

#1 Janulka123
Nechci dělat reklamu, ale pokud chceš řešit editaci obrázků ne jejich evidenci. A pokud nepotřebuješ 100% kompatibilitu s Adobe formáty a nechceš každý rok kupovat předplatné tak za sebe doporučuji Affinity Photo Mají k to mu i tutoriály. Jen malé upozornění: pokud děláš 2d grafiku je dobré koupit i Designer (na fotografie by ti mělo Photo stačit).

Dole na jejich stránkách je i trial.

C / C++ › void*
12. 12. 2017   #218950

#1 expoox
Nejprve musíš někde zjistit o jaký typ jde a jeho rozměr, no a pak to jen přetypuješ.

A jestli čekáš, že standardní typy se dají v C / C++ rozpoznat pomocí nějakých identifikátorů, tak nedají.

.NET › Ošetření vstupu
26. 11. 2017   #218764

#1 Troy585
jde o to že kód probíhá tak jak je napsaný. To znamená že se potom se vykonají ty podmínky, za nimi v kódu následuje kód Chyba: (to se nepřeskakuje).. takže se vykoná vždy pokud neskočíš na Platba:. Takže tu část kódu Chyba: musíš přeskočit jiným goto. 

.NET › sčítání dvou polí
27. 8. 2017   #217678

#1 ondrej77
A co neumíš? Procházet pole? 

foreach(string s in pole1)
{
 
}

Spojovat string?

string result;


result += s;

(případně použít StringBuilder a jeho metodu Append)
.NET › Windows Service - nejjednodu…
23. 8. 2017   #217625

#3 hlucheucho
Nevím jestli po tomto druhém vysvětlení to někdo pochopil lépe...

Na základě čeho tu cestu vytváříš, když to děláš ručně?

 kdyby náhodou:

using Microsoft.Win32;

static void Main(string[] args)
{
    //ukázka přístupu ke klíči: HKEY_CURRENT_USER\Control Panel
    try
    {
        using (RegistryKey key = RegistryKey.OpenBaseKey(RegistryHive.CurrentUser , RegistryView.Default))
        {
            using (RegistryKey sub_key = key.OpenSubKey("Control Panel", false))
            {
                Console.WriteLine(sub_key.Name);
                Console.WriteLine("-----------------------------------\n");
                var names = sub_key.GetSubKeyNames(); //výpis podklíčů
                foreach(string s in names)
                {
                    Console.WriteLine(s);
                }
                Console.WriteLine("-----------------------------------\n");
                //výpis hodnod podklíče: HKEY_CURRENT_USER\Control Panel\Colors
                using(RegistryKey colors_key = sub_key.OpenSubKey("Colors"))
                {
                    var values = colors_key.GetValueNames(); //výpis hodnot
                    foreach (string s in values)
                    {
                        Console.WriteLine(s);
                    }
                }
            }
        }
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }
    Console.ReadKey();
}
CorelDRAW › Kontury u čáry zakončenou ši…
14. 8. 2017   #217484

#2 Paldo
V Corelu nevím, u konkurence to není problém, je tam na to nástroj "šipka":

Připojen obrázek.

C / C++ › nastavení pointeru
13. 8. 2017   #217461

#29 oxidián nejspíš tam máš ještě něco jiného (nebo jinak), a to ti tam dělá bordel

C / C++ › nastavení pointeru
13. 8. 2017   #217456

#24 oxidián  

//tahle smyčka nemá žádný smysl:
for(i = 0; i<TABLE_TYPES_NUM; i++) // count of tables
        {
        TABLE_ * table_item = &(table_arrays[i]);
        currentTableElementsNum = (table_item[0]).num;
        }
// a char * prepareBuffer nic nevrací
//------------------------------------
//tady zbytečně pracuješ s neinicializovanou proměnnou tables:
   table_arrays[0] = tables.radiation_insolation;
    table_arrays[1] = tables.radiation_radiation;
    table_arrays[2] = tables.winds;
    table_arrays[3] = tables.pressure;
    table_arrays[4] = tables.humidity;
    table_arrays[5] = tables.temperature;
 //není lépe provádět ten kód podle logiky aplikace?
//------------------------------------
// a co plánuješ s tímto, taky nevím:
TABLE_ *table_arrays[6];
//lépe řečeno k čemu je to dobré

a taky nechápu smysl zakládat pole o velikosti 1.

C / C++ › nastavení pointeru
13. 8. 2017   #217448

#16 hlucheucho
Mistru oxidiánu je jakákoliv rada zbytečná. Za dva roky sice nepokročil přes lekci "ukazatel", ale zato dokáže napsat kód a následně svůj dotaz, složitějším způsobem než předtím.

.NET › Příklady na C#
6. 8. 2017   #217322

#1 OndraT
Podle mě, na naučení je nejlepší vymýšlet si vlastní prográmky, u těch budeš narážet na problémy a na věci které neznáš, a řešit je. Učení tě bude i víc bavit.
Než začneš doporučuji podívat se na celý tento playlist.

C / C++ › C# kolik má každé slovo písm…
5. 8. 2017   #217316

#1 OndraT
1. Jsi ve špatné diskuzi. Diskuze k C# je tady.

2. Tady je takový pro začátečníka jednoduchý způsob:

        static void Main(string[] args)
        {
            string text = "Ahoj, jak se máš?";
            string[] words = text.Split(new char[] { ' ', ';', ',', '.', ':', '\t', '?', '!', '+', '-', '*', '/', '\r', '\n', '\', '\v' });
            
            foreach(string word in words)
            {
                if (word.Length > 0) Console.WriteLine("{0} = {1}", word, word.Length);
            }

            Console.ReadKey();
        }

nebo: 

        static void Main(string[] args)
        {
            JinyZpusob("Ahoj, jak se máš?");
            Console.ReadKey();
        }
        
        //nahrazení nepísmenných znaků oddělovačem 
        static string Prepare(string text)
        {
            StringBuilder bu = new StringBuilder(text);
            for(int i=0; i<bu.Length; i++)
            {
                if (!Char.IsLetterOrDigit(bu[i])) bu[i] = ';';
            }
            return bu.ToString();
        }

        static void JinyZpusob(string s)
        {
            string text = Prepare(s);
            string[] words = text.Split(new char[] { ';' });
            foreach (string word in words)
            {
                if (word.Length > 0) Console.WriteLine("{0} = {1}", word, word.Length);
            }
        }
C / C++ › NULL
8. 6. 2017   #216664

#12 Sss
Samozřejmě u long 0. nullptr se používá u ukazatelů. Takže asi pouze u testů Tstruct * použiješ NULL nebo nullptr, u zbytku 0.

C / C++ › [VS 2015 C++] Resource Manag…
16. 4. 2017   #215627

#1 Polda18

Přidání ikony do konzole:
1. Resource Files->Add->NewItem source.rc (na názvu nezáleží, ale přípona musí být .rc)
2. Otevřít soubor source.rc a do něj napsat: MAINICON Icon "Ikona.ico" (Ikona.ico musí existovat ve složce se souborem source.rc)
3. provést kompilaci

(
Pokud se ti, změna ikony v exploreru ihned neprojeví musíš zavolat příkaz:
u Win 10: ie4uinit.exe –show
starší verze: ie4uinit.exe -ClearIconCache
)

Pro použití gcnew apd. bys musel dělat CLR projekt. (proto, ti to podtrhává)

Delphi › Drag Drop buněk v tabulce De…
10. 3. 2017   #215210
C / C++ › Definovanie char Meno atribu…
27. 2. 2017   #215103

#16 Kit
Protože to většině lidí přijde jako přehlednější, tak si asi budeš muset zvykat :)

C / C++ › Definovanie char Meno atribu…
26. 2. 2017   #215084

#14 Kit

Pokud si na to člověk zvykne, tak to přece píše automaticky...

C / C++ › Definovanie char Meno atribu…
26. 2. 2017   #215082

#12 Kit
No tak ji prostě nepoužiješ, a kdyby jo, tak ti za to hlavu nikdo neutrhne. Myslím si, že nemůže být na škodu vyznat se i v maďarské notaci.

C / C++ › Definovanie char Meno atribu…
26. 2. 2017   #215078
.NET › vizualizační ůloha do školy…
26. 2. 2017   #215076

#6 sidida
Proč, tak je to správně, ale dá:

for (int j = 0; j < pocet_znaku; j++) Console.Write('*');
C / C++ › Definovanie char Meno atribu…
26. 2. 2017   #215074

#8 global

Jak píšeš slouží to jako ukazatel na místo v paměti, v tomto případě na pole charů. Ale lze tím odkazovat i na jiné objekty třeba na třídy.

char meno[8]; - je pole o pevně daném rozměru 8, již při psaní programu.

ale pokud předem neznáš rozměr pole můžeš vytvořit nové, za běhu programu pomocí:

char *meno = new char[velikost]; (dynamická alokace paměti)

ale u tohoto způsobu je potřeba se postarat o uvolnění z paměti. To se provádí, buď hned jak víš, že už jej nebudeš potřebovat, nebo v destruktoru třídy, nebo před ukončením programu, pomocí:
delete []meno;

.NET › Po krátkom behu programu vyh…
24. 2. 2017   #215038

#1 alex_laco
jak píše gna, + celé by to mělo být v try-catch, hlavně kvůli zápisu do souboru (ten bych navíc provedl přes using).

ps. snad to máš promyšleno a budeš mít ošetřeno dobře, protože použití timeru je často ošidná věc.

C / C++ › Trojúhelník z hvězdiček
23. 2. 2017   #215009

#1 LeArnie

  1.  Toto je sekce C++, takže jsi měl založit vlákno v sekci .NET!
  2.  Pro vložení kódu slouží tlačítko <?
  3. pro separování hodnoty s textu používej TryParse nebo Parse v try-catch
  4. ve vnitřní smyčce musíš přece počet hvězd navyšovat o aktuální řádek
  5. místo text boxu, bych použil NumericUpDown
        private void button3_Click(object sender, EventArgs e)
        {
            try
            {
                int pocet = int.Parse(textBox1.Text);
                listBox1.Items.Clear();
                for(int radku=1; radku <= pocet; radku++)
                {
                    listBox1.Items.Add(new string('*', radku));
                }
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message, "Chyba", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

ještě přidám i tvou variantu: 

for (int radku = 0; radku < pocet; radku++)
{
 string s = null;
 for (int j = -1; j < radku; j++) s += "*";                    
 listBox1.Items.Add(s);
}
3D Studio MAX › 3D program now
17. 2. 2017   #214929

#1 vancutan
záleží co chceš modelovat.

A taky by jsi měl uvést alespoň OS.

C / C++ › C++ cvičebnice
25. 1. 2017   #214654

#1 Kaja
doporučuji si psát programy hotové programy, které mají nějaký smysl. Budeš narážet na nové věci a řešit různé problémy.

Napadá mě například: zjišťovat informace o souborech (jednoduché je například číst ID3 tag u mp3 souborů, nebo zobrazit vlastnosti BMP souborů). Vytvořit program pro synchronizaci složek. Výpočet obsahů, obvodů, úhlů různých objektů. Výpočet hmotnosti tělesa na základě jeho hustoty. Převod z římských čísel na arabské a naopak. Porovnání souborů. Generovat obrázky a aplikovat na ně různé filtry. Zálohování souborů. Vyhledávání a správa souborů. Konverze souborových formátů. Statistiky...

Je toho spousta co se dá napsat, záleží na tom co koho zajímá.

C / C++ › Proč to nefunguje?
21. 1. 2017   #214588

#1 mvxmilian
vyhoď za funkcí Soucet znak

Photoshop › Barvy v Adobe photpshop CC?
18. 1. 2017   #214561

#1 Hansa

Sice jsem moc nepochopil dotaz, ale takto se dá nastavit obrázek složený z 256 barev s paletou získanou z obrázku:

V anglické photoshopu verzi toto nastavení najdeš v menu:
Image->Mode->Indexed Color..

C / C++ › C# záznam mirofonu do souboru
1. 1. 2017   #214328

Teď jsem se díval na ten tvůj kód:

Proč když se snažíš použít MCI, tak do toho montuješ ještě Computer? Přehrávat to můžeš přece také pomocí MCI.

C / C++ › C# záznam mirofonu do souboru
1. 1. 2017   #214327

#7 visk
Pokud začínáš, doporučuji začít se základy.

Mimochodem, to MCI jsi taky nerozchodil?

ps, nevím jestli to "virus" obsahuje nebo ne, ale případně to zkus stáhnout třeba přes EDGE. A připojíš to nejspíš podobně jako Winmm.dll, použití se dočteš v dokumentaci. Pokud neumíš anglicky, tak si zprovozni v prohlížeči doplněk pro překlad stránek (nebo to dělej ručně pomocí google translate). Ale pokud se chceš programování věnovat, tak se nevyhneš učení se anglicky, pokud se angličtinu učit nechceš, tak se na programování vykašli (protože automatický překlad zatím moc "nepřemýšlí").

C / C++ › C# záznam mirofonu do souboru
29. 12. 2016   #214285

#3 visk
to bude tím, že se tou radou neřídíš:

tohle není "Microsoft.VisualBasic", ale "Microsoft VisualBasic for App.."

Microsoft.VisualBasic najdeš pod Assemblies->Framework

(poprvé jsem to nenapsal úplně podrobně, neměl jsem po ruce VS a věřil jsem, že to najdeš)

C / C++ › C# záznam mirofonu do souboru
29. 12. 2016   #214278

#1 visk

using Microsoft.VisualBasic.Devices;


References -> Add reference -> Microsoft.VisualBasic

ps,

příspěvky týkající se C# by měli být v sekci .NET

(microfone vypadá hrozně blbě, buďto mikrofon nebo microphone)

C / C++ › Jak proskenovat řetězec cons…
2. 12. 2016   #213867

#1 Tux
Nerad dělám za študáky úlohy, protože vidím jak to vypadá, když světu vládnou pitomci s diplomem. Ale tentokrát udělám z nudy výjimku.

#include <iostream>
#include <vector>
#include <string>

using namespace std;

vector<string> WordsExtract(const char delim, const string str);

int main()
{
	string input = "2012,2013,2015-2020, 2001 , 2002  ,  2003 ,2005,2006  - 2009";
	
	vector<string> inp = WordsExtract(',', input);

	
	for (unsigned u = 0; u < inp.size(); u++)
	{
		unsigned a = 0, b = 0;
		if (0 < sscanf(inp[u].c_str(), "%u-%u", &a, &b)) // base c
		{
			if (b == 0) b = a;

			for (; a <= b; a++)
			{
				cout << a << endl;//tady budeš počítat velikonoce
			}
		}
	}

	system("pause");
	return 0;
}

vector<string> WordsExtract(const char delim, const string str)
{
	vector<string> result;

	string word;
	for (string::const_iterator it = str.begin(); it != str.end(); it++) 	
	{
		if (*it == delim)
		{
			if (!word.empty())
			{
				result.push_back(word);
				word.clear();
			}
		}
		else
		{
			if (isdigit(*it) || (*it == '-' && !word.empty())) word += *it;
		}
	}
	if (!word.empty()) result.push_back(word);

	return result;
}

ber to jako inspiraci, ne jako řešení!

C / C++ › Cvičný test na cykly, co s t…
27. 11. 2016   #213795

#1 Derp

co s tím ?
co s čím?

Jaké číslo bude vypsáno

takové jaké bude v momentě, kdy se nesplní podmínka (x <= a)

a mimochodem tohle je C#, takže jsi ve špatné sekci

C / C++ › Dev c++... Build error 1
25. 11. 2016   #213773

#1 lokomotiva852
zkus ten projekt dát do jiné složky, třeba ti chybí práva k zápisu do stávající složky.

ps, pokud máš win10, tak se rovnou uč ve Visual Studiu a ne na předpotopním software

úplně ti postačí i express verze: stažení

C / C++ › Jak získat cesty k souborům…
25. 11. 2016   #213772

#1 richard.zavodny
já bych to řešil přes FindFirstFile/FindNextFile

C / C++ › Nerozumím programu
25. 11. 2016   #213771

#1 Momok
pokud ti jde o vysvětlení: 

int main(void)
{
	int cit, jmen, j, i = 0, zac = 0;
	int zb[MAX] = { 0 };
	char vysl[MAX];
	FILE *fin, *fout;

	fin = fopen("zlomky.in", "r"); //načte soubor pro čtení
	fscanf(fin, "%d %d\n", &cit, &jmen); //ze souboru fin získá hodnoty do cit a jmen
	fout = fopen("vysledek.out", "w"); //otevře soubor pro zápis a zkrátí na nulovou délku

	if (cit >= jmen) {//pokud je cit větší nebo rovno jmem
		zac = cit / jmen;//vydělí cit jmen
		cit %= jmen; //do cit vloží zbytek po celočíselném dělení cit:jmen
	}

	fprintf(fout, "%d.", zac); //zapíše do souboru hodnotu zac
	if (!cit)//když cit je nula
		fprintf(fout, "0");//zapíše do souboru 0

	while (cit)//smyčka (to mezi závorkami) se bude opakovat dokud cit nebude 0
	{
		zb[cit] = i + 1; //zapíše do pole zb na pozici cit hodnotu o jednu větší než i
		cit *= 10; //vynásobí cit deseti
		vysl[i] = cit / jmen + '0'; //do výsledku na pozici i vloží cit:jmen + 48 (48 je hodnota znaku 0)
		i++; //navýší i o jedna
		cit %= jmen; //do cit vloží zbytek po celočíselném dělení cit:jmen
		if (zb[cit]) break; //když zb[cit] není nula ukončí smyčku
	}

	if (cit)//když cit není nula
	{
		//do j vloží hodnotu z pole vysl a to z pozice uložené v poli zb na pozici cit (ale o jednu nižší)
		//(tohle se krkolomně popisuje)
                 j = vysl[zb[cit] - 1];
		// a na tu pozici hodí nulu
		vysl[zb[cit] - 1] = 0;
	}
	vysl[i] = 0; //do vysl na pozici i vloží nulu
	fprintf(fout, "%s", vysl); //zapíše do souboru znaky z pole vysl, bude zapisovat dokud nenarazí na nulu
	if (cit)//když cit není nula
	{
		fprintf(fout, "("); //zapíše do souboru závorku
		vysl[zb[cit] - 1] = j; //na toto umístění vloží j
		vysl[i++] = ')'; //do vysl na pozici i vloží závorku a pak i navýší o jedna
		vysl[i] = 0; //do vysl na pozici i vloží nulu
		fprintf(fout, "%s", vysl + zb[cit] - 1); //zapíše do souboru znaky z pole vysl od pozice dle výpočtu
	}
	return 0;//vrátí 0
}

zkoumat smysl programu se mě nechce, ale každopádně chybí tam ošetření chyb

Offtopic › Najlepší program na photosho…
23. 11. 2016   #213743

#5 peter
Pinacle Studio je spíš pro "děti" a této sekci raději po zkušenostech (před lety) Cyberlink PowerDirector. Pokud nějakou alternativu k Vegas tak snad jen: Final Cut Pro, nebo předražený Adobe Premiere Pro, ale s těmi prakticky žádnou zkušenost nemám.

Offtopic › Najlepší program na photosho…
23. 11. 2016   #213742

#6 Petra123
ps, pokud si z něčím nebudeš vědět rady, klidně se zeptej tady na fóru. Mimochodem součástí instalace Vegas dřív býval i demo projekt, ten si prostuduj jak pracuje (se vším si pohýbej ať vidíš jak to pracuje).

Offtopic › Najlepší program na photosho…
22. 11. 2016   #213731

#3 Petra123
Podle mě je hodně intuitivní a přehledný. Myslím, že za pár hodin se v něm naučí základy "každý". Jistě pokud jsi ještě nikdy nepracovala s audiem/videem budeš to mít trochu těžší, ale snadnější software na podobné úrovni budeš hledat těžko.

C / C++ › Input v realném čase
20. 11. 2016   #213691

#3 MatyMal
jak by to poznalo co je součástí řetězce?

k čemu by to bylo dobré?

C / C++ › Input v realném čase
19. 11. 2016   #213681

#1 MatyMal
co znamená "Input v realném čase"?

Offtopic › Ako nespustiť video/pesničku…
17. 11. 2016   #213662

#1 Anon

Media Player Classic Home Cinema
MPC-HC stačí v kontextovém menu exploreru kliknout na: Add to MPC-HC playlist

C / C++ › Generátor náhodných čísel s…
12. 11. 2016   #213597

2. verze s vectorem: 

#include <stdio.h>
#include <vector>
#include <time.h>
#include <stdlib.h>
//---------------------------------------------------------------------------
const int MAX_VALUE = 10;
//---------------------------------------------------------------------------
int main()
{
 std::vector<int>tmp;   //zásobník
 for(int i=1; i<=MAX_VALUE; i++)tmp.push_back(i); //naplnění zásobníku čísly 1- MAX_VALUE

 std::vector<int>out;    //výstup
 srand (time(NULL));     //inicializace pseudonáhodných čísel
 int r;
 while(!tmp.empty())      //smyčka bude pokračovat, dokud zásobník obsahuje nějaké prvky
 {
	 r = random(tmp.size());    //náhodný výběr indexu
	 out.push_back(tmp[r]);      //přihození čísla pod indexem do výstupního seznamu
	 tmp.erase(tmp.begin() + r);    //odebrání vybrané položky
 }

 for(unsigned i = 0; i<out.size(); i++)printf("%i\n", out[i]); // výpis

 system("PAUSE");
 return 0;
}
C / C++ › Generátor náhodných čísel s…
12. 11. 2016   #213596

#3 H3k70r 

Jedna z těch "základních věcí" je procházení pole:

bool KontrolaExistenceCisla(int cislo, int rozmer_pole, int pole[])
{
 for(int i=0; i<rozmer_pole; i++)if(pole[i]==cislo)return true;
 return false;
}

trochu se snaž ;)

C / C++ › Generátor náhodných čísel s…
12. 11. 2016   #213594

#1 H3k70r

1.
Tedy, generovat čísla ty házet do pole, tak dlouho dokud nebude plné a zároveň procházet pole pro kontrolu duplicitních čísel. (Pro počet doplněných čísel bude třeba mít pomocnou proměnnou, která bude sloužit jako pozice na kterou se má zapisovat, a nebo použít pro výstup std::vector) 

2.

Pokud velikost pole má být totožná s rozsahem hodnot, stačí vygenerovat třeba vector jako zásobník hodnot (v tomto případě s čísly 1-10) náhodně vybírat index hodnoty s tohoto vectoru a přiřazovat hodnotu pod indexem do pole a tuto pak odstranit ze zásobníku. Smyčka by trvala tak dlouho, dokud nebude zásobník prázdný (v tomto případě 10x).

.NET › C#: Audio/Video info
12. 11. 2016   #213592

Ahoj, nemáte někdo zkušenosti se získáváním informací o stopě (především mě jde o tagy a délku stopy) nejlépe s využitím nainstalovaných kodeků?

Případně i pokud máte vyzkoušenu nějakou free knihovnu...

Jde mi hlavně o soubory WMA, OGG, AVI, MP4, MPG, MKV, jediné co už mám vyřešeno je MP3 a WAV.

.NET › Dělení v C# problém
6. 11. 2016   #213498

pro lepší vysvětlení while:

        public static void Test()
        {
            Console.WriteLine("vypíše: 12345");

            int i = 1;
            while(i < 6)
            {
                Console.Write(i);
                i++;
            }

            Console.WriteLine("\nvypíše: 123");
            int j = 1;
            while (j < 6)
            {
                Console.Write(j);
                if (j == 3) break;
                j++;
            }
        }
.NET › Dělení v C# problém
6. 11. 2016   #213496

#11 vamvam

test = cislo1 / cislo2;

vypočítá 9 : 2 =  4

a pak když to násobím 

4 * 2 != 9

tak se nesplní podmímka

.NET › Dělení v C# problém
6. 11. 2016   #213494

#9 vamvam
ne jezdí v tom while, mezi závorkami:

while(..) {tady}

.NET › Dělení v C# problém
6. 11. 2016   #213492

příklad: 

public void RandomCisloZ(int max, int max2)//<název funkcí se formátuje spíš takto
        {
            int cislo1 = random_cislo.Next(1, max);
            int cislo2, test;
            
            while(true) //nekonečná smyčka
            {
                cislo2 = random_cislo.Next(1, max2);
                test = cislo1 / cislo2; //vydělím to
                if (cislo1 == (test * cislo2)) break; // násobením ověřím, že dělení proběhlo správně
            }


            // zbytek kódu jsem nechal tak, protože nevím jako to máš
            label1.Text = cislo1.ToString();
            label3.Text = cislo2.ToString();

            je_to_cislo = int.TryParse(Vysledek1.Text, out vysledek_z_boxu);
            
            if (je_to_cislo = !true)
                MessageBox.Show(this, "Musíš použít číslice, né písmena!");

            Vysledek1.Clear();
        }
.NET › Dělení v C# problém
6. 11. 2016   #213491

#6 vamvam
nikdy nebude 0, protože nikde tam žádnou hodnotu nepřiřazuješ

.NET › Dělení v C# problém
6. 11. 2016   #213489

#4 vamvam
nejprve k k té smyčce: 

while (test != 0 || test >= 1) //řekněme že test je 8,
                {
                   //takže se to dostane do smyčky
                   cislo2 = random_cislo.Next(1, max2);
                   if(test == 0) 
                   { //toto se nikdy nesplní,
                     //protože se to do smyčky dostane jen pokud není 0
                       break;
                   }
                  //test jsi nezměnil, takže smyčka bude pokračovat
                }
.NET › Dělení v C# problém
6. 11. 2016   #213487

#2 vamvam
1. pokud chceš celočíselné hodnoty, tak tam nedávej float, ale třeba int (navíc random vrací stejně int)

2. vždy je lepší sem dát celou funkci, ne jen část (lépe se zjišťuje, kde je chyba - navíc může být zrovna v místě, které tu nedáš)

while (test != 0) - není to náhodou nekonečná smyčka?

navíc testuješ to následovně:

while (test != 0) = pokud test není nula

if(test == 0) a zároveň pokud je nula..

C / C++ › časovač
6. 11. 2016   #213484

#10 KIIV 

předpokládám, že si obsluhu arduina chce psát sám, jak umí. Ale je fakt, že pokud to má pouze za/vypínat tak je to zbytečné.

C / C++ › časovač
6. 11. 2016   #213482

#8 Pikin88
Mě to přijde nějaké divné. Chceš mi říct, že ti poběží nonstop počítač připojený na internet, na kterém poběží aplikace, která v určitém čase (podle slunce) spustí čerpadlo (pokud jde o čerpadlo, které souvisí s vytápěním, je nejrozumnější řídit se teplotou - spouštět to termostatem. Pokud to má souviset s intenzitou světla, dá se použít soumrakový spínač). Nechápu, k čemu je dobré spouštět nějaké čerpadlo přesně podle slunce (on se stejně přesně západ slunce určit nedá - stačí že budeš mít v blízkosti nějaký kopec), přece to musí stačit zhruba - takže si vytvořit "tabulku" s časem spuštění pro každý den.

A když by jsi to chtěl přesně tak, jak si to definoval, tak půjde o kompletní software psaný na zakázku (nejspíš to poběží jako služba) a to doporučuji dát do sekce inzerce.

Kdybych to dělal já, tak bych aplikaci pro získávání dat napsal v C# a komunikoval s arduinem přes dll napsanou v C.

C / C++ › časovač
5. 11. 2016   #213478
C / C++ › časovač
5. 11. 2016   #213472

#4 Pikin88
a s tím čerpadlem to má komunikovat jak?

Musíš to specifikovat jak to má přesně fungovat, na jakém systému to pojede, s čím přesně máš problémy...

C / C++ › funkcie
5. 11. 2016   #213469
BDS
C / C++ › funkcie
5. 11. 2016   #213467
C / C++ › časovač
5. 11. 2016   #213466

#1 Pikin88
jde ti o to napsat úkol v céčku? nebo spouštět čerpadlo?

Každopádně, toto téma mělo být v sekci inzerce.

C / C++ › funkcie
5. 11. 2016   #213464

#1 jordi1811

  1. měl bys psát jestli jde o c++ nebo c
  2. místo čekání, jestli ti tu náhodou někdo nenapíše d.ú., měl by ses snažit udělat něco sám, až pak případně řešit problémy na fórech.

C / C++ › problem skompilovat QT v MSV…
2. 11. 2016   #213439

QtNFSWTuningCalculatorLatest:

Requires QT 4.5.3 or later but not 5.x.x. The possibility to compile Qt Creator or through a plugin in another program (MinGW, MS VisualStudio and others) The application is built-in for X86 systems.

C / C++ › multiple definition
1. 11. 2016   #213419

#23 Sejpak
v dnešní době používat software, který byl aktualizován naposled před 12ti lety...

Už chápeš, proč to není dobrý nápad.

C / C++ › C# / Java / C++
1. 11. 2016   #213418

Podívej moc nad tím přemýšlíš.

Stáhni si Visual Studio Community 2015

- je zdarma i pro komerční použití (dokud na tom nevyděláš 1 000 000 dolarů) - pokud máš málo místa na disku, tak ti bohatě bude stačit i verze Express)

Podívej se na tento tutoriál.

Za pár dnů budeš umět základy a uvidíš jestli ti C# sedne.

C / C++ › C# / Java / C++
1. 11. 2016   #213417

#15 vamvam
v podstatě dá, ale na některé věci, například náročný 3D software, ovladače, přímý přístup k hardwaru, nějaký nástroj pro komunikaci v síti (velké množství souborů a dat), antiviry, zpracování videa, nebo i audia (nemyslím přehrávání, ale editaci a efekty) je lépe zvolit C++ nebo jiný jazyk. V podstatě už to zmínil KIIV. (Ale vlastně mě nenapadá nic co by v C# napsat nešlo vůbec.) Navíc pokud je potřeba v C# můžeš importovat funkce z DLL, kterou napíšeš v C++.

Ale když se chceš jazyk učit sám, C# má jednu velkou výhodu (oproti asi všem jazykům), na internetu se dá najít moc materiálu.

A má taky (pro někoho) nevýhodu: sice se dá jaksi používat v linuxu, ale primárně je určen pro Windows.

C / C++ › C# / Java / C++
1. 11. 2016   #213408

#13 vamvam
Lehce C, dlouho VCL/C++ teď většinou C#

(C# především proto, že většinou projekty co dělám potřebuji udělat rychle a na poctivé WinApi nemám čas a předražený C++ Builder kupovat nemíním. Většinou dělám formulářové nebo konzolové aplikace pro výpočty, práce se soubory, manažery, zpracování obrázků apd.)

C / C++ › multiple definition
1. 11. 2016   #213395

#18 Sejpak tam spíš řeší použití ve více projektech.

Ty máš v některém ze souborů duplicitně "void Cihla::nakreslit(SDL_Surface*screen)" - třeba v souboru grafika.h. Normálně se to řeší tak jak jsem psal v příspěvku výše (pouze jsem zapomněl v deklaraci třídy za } dát ; - to je důležité).

V první řadě bych radil si pořídit novější IDE (to co používáš vyšlo v roce 2004), u modernějších se často přesně dozvíš, kde se duplikát nalézá. (Když už nechceš Visual Studio ani Code::Blocks, tak si sežeň alespoň dev-C++ 5.11)

C / C++ › C# / Java / C++
1. 11. 2016   #213393

#10 vamvam
bez toho abych se díval ne nějaké statistiky, tak často vídám v inzerci C# .NET, MySQL, SQL, ASP.NET, PHP, Java (hlavně pro mobilní aplikace) a i dost C/C++. Ale na druhou stranu, myslím že např. C# programátorů bude přibývat jako hub po dešti, takže C++ programátoři se možná stanou více ceněnými.

C / C++ › multiple definition
31. 10. 2016   #213338

#15 Sejpak
a co tohle:

go into the Project Options (Alt + P). In the files tab, find the name of the .cpp file that has your class in, click it. Click once in the box next to "include in linking."

C / C++ › multiple definition
31. 10. 2016   #213332

#12 Sejpak
to ho nezajímá, soubor H nic o souboru CPP neví

správně by jsi to měl mít: 

#ifndef _BREAKER_H
#define _BREAKER_H

#include <SDL/SDL.h>
#include <SDL/SDL_image.h>

int Lock(SDL_Surface* screen);
void palka(SDL_Surface *screen,int x,int y,int x2,int y2);

class Cihla
{
    private :
        int x,y,x2,y2,red,green,blue;
        bool existence;
    public :
        Cihla();
        void nakreslit(SDL_Surface*);
        void souradnice_zapis(int,int,int,int);
        int souradnice_kontrola(int,int,int);
        void barva(Uint8,Uint8,Uint8);
        void exist_zapis();
        bool exist_kontrola();
};

#endif

a cpp: 

#include <stdio.h>
#include <iostream>
#include <cmath>
#include <cstdlib>
#include "grafika.h"
#include "breaker.h"


int Lock(SDL_Surface* screen)
{
    if(SDL_MUSTLOCK(screen))
    {
        SDL_LockSurface(screen);
        return 1;
    }
    else
        return 0;
}
//atd.
C / C++ › multiple definition
31. 10. 2016   #213329

nene tím to určitě není

tak proč to v kódu co jsi tu dal nemáš ?

tam jakoby všechny funkce vypisujou že sou multiple definition

i konstruktor? 

že se to člověk jen učí tak je jedno co použije

právě, když se člověk učí, tak potřebuje nedostatky popsat co nejlépe 

C / C++ › multiple definition
31. 10. 2016   #213324

#6 Sejpak
není to náhodou proto, že v souboru H ti chybí #include <SDL/SDL.h> (nezná SDL_Surface)?

ps, divím se, že se trápíš na mrtvole dev c++ 4.9.9.2 ..

C / C++ › multiple definition
31. 10. 2016   #213302

#1 Sejpak 

//v souboru H budeš mít něco jako:

class MyClass
{
 public:
 void MyFunc(bool b);
}

//tak do souboru cpp uvedeš něco jako:

void MyClass::MyFunc(bool b)
{
 if(b)...
}

//a volat to pak můžeš:

MyClass *myClass = new MyClass();
myClass->MyFunc(true);

prostě všechno musíš definovat pouze jednou.

Když sem hodíš konkrétní kód, tak ti někdo přesně poradí.

C / C++ › C# / Java / C++
30. 10. 2016   #213270

#5 vamvam
ohledně posledního odstavce. Jsi toho typu lidí, kteří když si staví závodní auto, poskládají motor šroubek po šroubku, nebo objednáš hotový složený, od firmy s dobrou pověstí? Myslím, že na programování v C++ je potřeba víc trpělivosti a učení bude trvat nejspíš déle.

C / C++ › C# / Java / C++
30. 10. 2016   #213268

Mě přijde logičtější opačný postup, než co píše Kit. Tedy základy  C - C++ , pak C# a přitom se zdokonalovat v C++.

Podle mě je lepší zapomenout na to, že něco nemusím řešit, než zapomenout na něco na co zapomenout nesmím, navíc například v C# můžeš například importovat WinApi funkce a bez hrubé znalosti C++ budeš asi na dokumentaci hledět jak puk. Taky se rozhoduj podle toho, co chceš programovat. Nebo jak napsal KIIV, vyzkoušej si co ti sedne.

C / C++ › Tabuľka násobenia
27. 10. 2016   #213248

#9 hlucheucho taky jsem to tak pochopil :)

ale nepochopil smysl výpisu násobků nuly. 

 

 

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