Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

[ROZWIĄZANE] Błędnie zwracana wartosc zmiennej


  • Zamknięty Temat jest zamknięty
4 odpowiedzi w tym temacie

#1 Pan PrO

    Wszechpomocny

  • Użytkownik

Reputacja: 99
Zaawansowany

  • Postów:388
  • Lokalizacja:PC
Offline

Napisano 19.01.2013 15:01

Witam. Mam taką funkcję


public Sprawdz(id)
{
new Czasp[3];
get_time("%d", Czasp[0], 11);
get_time("%m", Czasp[1], 11);
get_time("%Y", Czasp[2], 11);

client_print(id, print_chat, "Dzis jest: %d %d %d za 30 dni bedzie: %s", str_to_num(Czasp[0]), str_to_num(Czasp[1]), str_to_num(Czasp[2]), PrzeliczNaDate(30));
}

lecz po użyciu jej w say wyświetla mi takie coś

Dzis jest: 102013 2013 2013 za 30 dni bedzie: 18.2.201


Dlaczego nie wyświetla mi aktualnej daty ??

Użytkownik Pan PrO edytował ten post 19.01.2013 15:01

  • +
  • -
  • 0

#2 speedkill

    Godlike

  • Przyjaciel

Reputacja: 1 592
Godlike

  • Postów:2 733
  • GG:
  • Steam:steam
  • Imię:Michał
  • Lokalizacja:Prudnik
Offline

Napisano 19.01.2013 15:15

Nie łatwiej ?
get_time("%d/%m/%Y - %H:%M:%S", g_Time, charsmax(g_Time));

Twój błąd polega na tym, że do zmienna Czasp jest typu integer, czyli jest liczbą całkowitą, a Ty chcesz przypisać do niej stringa.
  • +
  • -
  • 1

If you can dream it, you can do it.


#3 Kameha

    Początkujący

  • Użytkownik

Reputacja: 3
Nowy

  • Postów:14
  • Lokalizacja:Assambler
Offline

Napisano 19.01.2013 15:16

Podajesz statyczną wielkość tablicy podczas zapisu daty do zmiennej. Oraz zapisujesz ten sam wynik w postaci Tablicy znakowej do jednej zmiennej.
Użyj tego:

new Czasp[3], temp[5];
get_time("%d", temp, charsmax(temp));
Czasp[0] = str_to_num(temp);
get_time("%m", temp, charsmax(temp));
Czasp[1] = str_to_num(temp);
get_time("%Y", temp, charsmax(temp));
Czasp[2] = str_to_num(temp);
client_print(id, print_chat, "Dzis jest: %d %d %d za 30 dni bedzie: %s", Czasp[0], Czasp[1], Czasp[2], PrzeliczNaDate(30));


@Edit, Up
Jednak sposób wyżej wymieniony jest łatwiejszy, na początku myślałem że masz zamiar wykonywać jakieś działania na poszczególnych zmiennych dlatego Ci tak to rozpisałem.

Pozdrawiam,
Kameha

Użytkownik Kameha edytował ten post 19.01.2013 15:20

  • +
  • -
  • 1

#4 Pan PrO

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 99
Zaawansowany

  • Postów:388
  • Lokalizacja:PC
Offline

Napisano 19.01.2013 17:39

Lol dzisiaj jakiś niekumaty jestem że taki błąd zrobiłem. Można Zamknąć
  • +
  • -
  • 0

#5 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 19.01.2013 17:50

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0

marwit-0.png





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych