logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Bascom AVR - zmienne string i wydzielanie pojedyńczych znaków

monokrysztal12 03 Wrz 2011 20:08 3538 4
REKLAMA
  • #1 9892162
    monokrysztal12
    Poziom 13  
    Witam.
    Jak w Bascom dla mikroprocesorów AVR wyodrębnić poszczególne znaki z zmiennej typu string mającej kilka znaków?

    Np. Zmienna string jest 5-znakowa. I chcę pojedynczo przypisać poszczególe litery/cyfry tej zmiennej do nowej zmiennej typu string, ale 1-znakowej.


    String*' 5 znaków:
    ABCDE

    1.String*1 = A 'pierwsza zmienna string 1 znakowa
    2. String*1 = B 'druga zmienna

    i tak dalej, do 5 zmiennych...

    W jaki sposób można poszczególne znaki wydzielić?
  • REKLAMA
  • Pomocny post
    #2 9892268
    Mundi1970
    Poziom 24  
    Funkcja MID. :) Link
  • REKLAMA
  • #3 9924641
    monokrysztal12
    Poziom 13  
    Funkcja MID wygląda następująco:
    zmienna = MID( zmienna_tekstowa , początek [, ilość znaków] )


    I jeżeli np. zmienna_tekstowa, z której będę pobierał poszczególne znaki może mieć max 5 znaków, a zapiszę do niej np. tylko 3 - tj. "ABC".
    I jak jako pierwszy znak do zwrócenia(tj "początek") podam pozycję np. 1, a ilość znaków 1 - to mi zwróci ze "zmienna_tekstowa" do zmiennej "zmienna " literkę A.

    -> A co będzie, jak podam jako pierwszy znak do zwrócenia np. 4 (nic tam nie ma, albowiem tylko 3 pierwsze bajty w zmiennej mam zapisane) i ilość 1? Zwróci mi brak znaku - tj wpisze do tej zmiennej pustkę- ""?

    I pytanie 2

    Jak di zmiennej string A*7 zawierającej ciąg:

    przypiszę zmienną B*3 zawierającą w 3 pierwszych bajtach litery np


    /operacja wygląda tak/:

    .. to czy otrzymam w zmiennej A coś takiego: A= "123DEFG" czy takiego A="123" ?

    Dziękuję za odp.
  • REKLAMA
  • Pomocny post
    #4 9925574
    Mundi1970
    Poziom 24  
    monokrysztal12 napisał:
    I jeżeli np. zmienna_tekstowa, z której będę pobierał poszczególne znaki może mieć max 5 znaków, a zapiszę do niej np. tylko 3 - tj. "ABC".
    I jak jako pierwszy znak do zwrócenia(tj "początek") podam pozycję np. 1, a ilość znaków 1 - to mi zwróci ze "zmienna_tekstowa" do zmiennej "zmienna " literkę A.

    Tak.
    Cytat:

    -> A co będzie, jak podam jako pierwszy znak do zwrócenia np. 4 (nic tam nie ma, albowiem tylko 3 pierwsze bajty w zmiennej mam zapisane) i ilość 1? Zwróci mi brak znaku - tj wpisze do tej zmiennej pustkę- ""?

    String o długości 0 znaków "".
    Cytat:
    I pytanie 2

    Jak di zmiennej string A*7 zawierającej ciąg:

    przypiszę zmienną B*3 zawierającą w 3 pierwszych bajtach litery np


    /operacja wygląda tak/:

    .. to czy otrzymam w zmiennej A coś takiego: A= "123DEFG" czy takiego A="123" ?

    A="123"

    PS. Takie rzeczy można samemu sprawdzić nie posiadając mikrokontrolera ;). W BASCOMIE naciskając F2 ukazuje nam się fajne narzędzie.

    Bascom AVR - zmienne string i wydzielanie pojedyńczych znaków
  • #5 9926504
    monokrysztal12
    Poziom 13  
    Rozumiem, dziękuję za odpowiedź. :D
REKLAMA