Zadanie 4.9
Ostatnio zmodyfikowano 2010-04-07 00:10
Steryd9339 Temat założony przez niniejszego użytkownika |
Zadanie 4.9 » 2010-04-06 09:43:01 #include <iostream> #include <conio.h> #define ROK 365 #define R "R" #define O "o" #define K "k"
int main() { using namespace std; const char ODSTEP = ' '; const char M = 'm'; const char A = 'a'; const char NOWA_LINIA = '\n'; cout << R << O << K << NOWA_LINIA << ODSTEP << M << A << ODSTEP << ROK << ODSTEP << "dni!" << NOWA_LINIA; getch(); return 0; }
const char NOWA_LINIA = '\n';
- Dlaczego do stałej char przypisano 2 znaki? Def. Z netu char - zmienna przechowuje znaki (litery, cyfry, znaki interpunkcyjne). Za pomącą tego typu zmiennej można także przechowywać niewielkie liczby. To ile ona może pomieścić znaków i od czego to jest zależne? @Down Przed n jest "/" tylko że w lewo I jeszcze 1 pytanie żeby new topiku nie robić W 6.2. Tablice jednowymiarowe Jest napisane : Należy tu wyraźnie podkreślić, że numerowanie tablic w C++ zaczyna się zawsze od zera !!! |
To dlaczego IDE/kompilator u mnie wyświetla błąd?
#include <iostream> #include <conio.h>
using namespace std;
int main() { short a, b, c, d; a = 2 + 7 * 16 - 8; b = 22 * 2 / 11; c = 8383 - 222 + 292 * 8; d = 5 * 2 * 4; short Tab[ 3 ] = { a, b, c, d }; cout << "a= " << Tab[ 0 ] << "\n" << "b= " << Tab[ 1 ] << "\n" << "c= " << Tab[ 2 ] << "\n" << "d= " << Tab[ 3 ] << endl; }
23|error: too many initializers for `short int[3]'| Błąd jest z linią 23 i jeżeli podmienię za 3 liczbę 4 to jest ok ale wtenczas zdanie które zacytowałem było by blednę a jest poprawne Screen: http://www14.speedyshare.com/files/21798158/download/tabela%20to%20chuj.jpg |
|
TheLukon |
» 2010-04-06 09:57:11 const char NOWA_LINIA = '\n';
O jakie dwa znaki ci chodzi? Ja widze tylko jeden. A zakres typu char to : -128 do 127 (32bitowych) |
|
Elaine |
» 2010-04-06 12:22:41 A zakres typu char to : -128 do 127 (32bitowych) |
Jasne, jasne... char na innym sprzęcie/kompilatorze może mieć zupełnie inny zakres i/lub być unsigned (żeby nie było, że wymyślam - sprawdź np. na ARMie, tam char jest, przynajmniej pod GCC, domyślnie unsigned). Niestety, w C++ (w zasadzie to się wzięło jeszcze z C) typy podstawowe mają bardzo słabo określone rozmiary i zakresy. |
|
malan |
» 2010-04-06 12:22:57 {a, b, c, d}; Ja tu widzę 4 elementy. Nie 3. Numerowanie zaczyna się od 0, więc: a - 0 b - 1 c - 2 d - 3 ..., ale tablica przechowuje 4 elementy. |
|
Steryd9339 Temat założony przez niniejszego użytkownika |
» 2010-04-06 12:36:02 Czyli jak są 4 elementy to powinno być tab[3] czy [4] w końcu? @Down Ok. Dzięki. |
|
Elaine |
» 2010-04-06 12:36:58 4 |
|
malan |
» 2010-04-07 00:08:04 @Steryd9339: Masz jeszcze jakieś pytania? :) |
|
Elaine |
» 2010-04-07 00:10:00 Prawie jak Dante. On też w każdym temacie musiał napisać post, zanim go (temat, nie post) zamknął... |
|
« 1 » |