166
Vývoj / Re:Jak zamezit, aby byla funkce inline
« kdy: 23. 09. 2013, 14:35:30 »
díky
Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.
u32 getDelay(u32 timeVal) {
return cas - timeVal;
}
- při každém šifrování řetězce/hesla vygeneroval jiný řetězec
silná hashovací funkce (např. z rodiny SHA) + náhodný salt je to co hledátePokud bude zasoleno náhodně, tak už to nijak nepůjde ověřit, ne?
prezek:
... a je vazne videt, ze programovat moc neumite, jinak byste vyuzil ty ni,nj a nk promenne
Můžu se zeptat, jakou verzi Visual Studia a jaké nastavení překladače jsi použil? Ty časy jsou dost zoufalé. Hlavně by mě zajímalo nastavení optimalizací (/O...) a runtime testů (/RTC...).
#include "stdafx.h"
#include <time.h>
#define MULTI_ARRAY
#ifndef MULTI_ARRAY
#include "malloc.h"
#else
#include "boost/multi_array.hpp"
#endif
#include <cassert>
void fce() {
int ni = 3, nj = 4, nk = 2;
#ifdef MULTI_ARRAY
// Create a 3D array that is 3 x 4 x 2
typedef boost::multi_array<double, 3> array_type;
typedef array_type::index index;
array_type A(boost::extents[ni][nj][nk]);
index i, j, k;
#else
double ***A;
int i, j, k;
A = (double***) malloc(ni * sizeof (double**));
for (i = 0; i < ni; i++) {
A[i] = (double**) malloc(nj * sizeof (double*));
for (j = 0; j < nj; j++)
A[i][j] = (double*) malloc(nk * sizeof (double));
}
#endif
// Assign values to the elements
int values = 0;
for (i = 0; i != 3; ++i)
for (j = 0; j != 4; ++j)
for (k = 0; k != 2; ++k)
A[i][j][k] = values++;
// Verify values
int verify = 0;
for (i = 0; i != 3; ++i)
for (j = 0; j != 4; ++j)
for (k = 0; k != 2; ++k)
assert(A[i][j][k] == verify++);
#ifdef MULTI_ARRAY
#else
for (i = 0; i < ni; i++) {
for (j = 0; j < nj; j++)
free(A[i][j]);
free(A[i]);
}
free(A);
#endif
}
int _tmain(int argc, _TCHAR* argv[]) {
time_t t0 = time(NULL);
for (int i = 0; i < 500000; i++)fce();
time_t t1 = time(NULL);
printf("%d %d %d", (int) t0, (int) t1, (int) (t1 - t0));
return 0;
}Testováno Microsoft Visual Studio C++:V loni to vypadalo tak že když se nepřinesl úkol z matematiky, tak to nebyl problém, když se ale nepřineslo něco na výtvarku, tak to byl vážný prohřešek.Bez úkolu z matiky se vyučovací hodina přežít dá, ale těžko budeš malovat košík s ovocem, když nemáš košík, ovoce jsi hodil z okna po školníkovi, ve štětci jsi nechal ztvrdnout barvu a tempery rodiče nekoupili, protože jsou to povrchně myslící ignoranti. Za jednu hodiny výtvarky se toho moc stihnout nedá, to pak trvá 3 týdny místo jednoho, než něco vznikne. Navíc děti po sobě neumí uklízet, takže hodina musí končit o 10 minut dříve, než před lety, protože učitelka musí deváťákům vysvětlovat, jak se myje štětec, že se hadra musí vyždímat...
Na některých školách (FIT VUT Brno) Ti děkan otevřeně řekne, že se jedná o výzkumnou instituci a studenti jsou vedlejší produktTo mi přijde pořád lepší, než škola, která se chlubí tím, že na ní získáš M.Sc, M.A., MBA, Ph.D a mezinárodní akreditace.
boost::multi_arrayA to jako vážně? Místo 6 řádků snad každému srozumitelného programu stahovat nějakou knihovnu s 373 MB? Ještě že neumím pořádně programovat, protože tohle není nic pro mě.
http://www.boost.org/doc/libs/1_54_0/libs/multi_array/doc/user.html
Mimo to, spominane double ***p; si predstavim ako ukazatel na ukazatel na ukazatel na double. A to je uz same dost zahmlene. Interpretacia "pointer je pole" je dost nepriezracna a nevidim dovod, preco to pisat takto.