Ĺadny brzuch
Mam jeszcze jedno pytanie odnośnie zmiennych typu char :rolleyes: Szukałem tego na forum, ale znalazło mi tylko sposób sprawdzenia długości słowa po przeniesieniu go do tablicy, a nie chciałbym tego robić.
Funkcja strlen() mi się tutaj nie przyda bo to jest właśnie o ile się nie mylę do sprawdzenia długości jeśli wyraz jest w tablicy :unsure:
Program powinien po przyjęciu zmiennej "a" typu char sprawdzić jej długość i jeśli składa się z jednego znaku wykonać inną operację, a jeśli ma więcej niż jedną literę zrobić co innego.
Zrobiłem coś takiego:
#include <iostream.h> #include <stdlib.h> #include <math.h> #include <string.h> using namespace std; int main(void) { char test[30]; char a; cout << "Podaj: "; cin >> a; cin >> test; cout << strlen(test); cout << b; system("PAUSE"); return 0; }
Ale w powyższym przykładzie pierwsza litera jest uznawana za zmienną a, a reszta zapisywana do tablicy, czyli słowo w tablicy nie ma pierwszej litery :unsure:
Funkcja strlen() mi się tutaj nie przyda bo to jest właśnie o ile się nie mylę do sprawdzenia długości jeśli wyraz jest w tablicy
strlen() mówi ci ile jest jakowyś znaków zapisanych do tablicy + NULL; a więc możesz
int M = strlen(tablica)-1; //wtedy masz ilosć wszystkich znaków(bez NULL'a) //i dalej if(M==1) .... else ....
Pozdro!
w zmiennej typu char, np, char a; możesz przechowywać tylko jeden znak,
natomiast słowa przechowywuje się w zmiennej tablicowej typu char
cout << "Podaj: "; cin >> a; cin >> test;
w tym przypadku do "a" jest przypisana pierwsza literka ciągu, a reszta do tablicy, chyba że wpiszesz jedną literke następnie enter i później jakiś tekst
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Funkcja strlen() mi się tutaj nie przyda bo to jest właśnie o ile się nie mylę do sprawdzenia długości jeśli wyraz jest w tablicy :unsure:
Program powinien po przyjęciu zmiennej "a" typu char sprawdzić jej długość i jeśli składa się z jednego znaku wykonać inną operację, a jeśli ma więcej niż jedną literę zrobić co innego.
Zrobiłem coś takiego:
#include <iostream.h> #include <stdlib.h> #include <math.h> #include <string.h> using namespace std; int main(void) { char test[30]; char a; cout << "Podaj: "; cin >> a; cin >> test; cout << strlen(test); cout << b; system("PAUSE"); return 0; }
Ale w powyższym przykładzie pierwsza litera jest uznawana za zmienną a, a reszta zapisywana do tablicy, czyli słowo w tablicy nie ma pierwszej litery :unsure:
Funkcja strlen() mi się tutaj nie przyda bo to jest właśnie o ile się nie mylę do sprawdzenia długości jeśli wyraz jest w tablicy
strlen() mówi ci ile jest jakowyś znaków zapisanych do tablicy + NULL; a więc możesz
int M = strlen(tablica)-1; //wtedy masz ilosć wszystkich znaków(bez NULL'a) //i dalej if(M==1) .... else ....
Pozdro!
w zmiennej typu char, np, char a; możesz przechowywać tylko jeden znak,
natomiast słowa przechowywuje się w zmiennej tablicowej typu char
cout << "Podaj: "; cin >> a; cin >> test;
w tym przypadku do "a" jest przypisana pierwsza literka ciągu, a reszta do tablicy, chyba że wpiszesz jedną literke następnie enter i później jakiś tekst