Új hozzászólás Aktív témák
-
expfgv
újonc
válasz
s1999xx
#5924
üzenetére
Köszi a reagálást, ha már itt válaszoltál, leírom ide a konkrét problémát (bocsi a szemetelést a többiektől!).
Amit írtál, be van kapcsolva nálam, projectet is létrehoztam természetesen!
A feladat:Feladat: Állapítsuk meg, hogy az egyes változó típusok mekkora méretűek bájtban. (bájt==Byte)
Ezt a sizeof(x) egy operandusú operátorral tehetjük meg, mely az argumentumában szereplő objektum, ebben az esetben a változó méretét adja vissza bájtban. Így könnyen ellenőrizhetjük, hogy egy adott típus hány bájtos, azaz hány bájtot foglal le a memóriában,
Például.:
char típus : 1 (bájt), előjeles EGÉSZ alapból; -128...127;
unsigned char: 1 (bájt), előjel nélküli EGÉSZ, char típusú
számábrázolás; 0...255 értékekkel;
int típus : 4 (bájt) !!a 32 bites környezetben!!,
előjeles EGÉSZ alapból. Az int típus méretét feltétlenül ellenőrizni kell, mert a mérete operációs rendszer függő!FONTOS: A BREAKPOINT-ot az 'int main()' sorba tegye, léptesse a programot soronként és az eredményeket a WATCHES ablakban figyelje, LOCAL VARIABLES alatt! Ez az ablak 'debug' esetén automatikusan megnyílik.
Maga a kód (megjegyzésekkel):
#include <stdio.h> // header file-ok
#include <stdlib.h>
// Deklarációs rész (később)
// int aglobalis, bglobalis; // Globális változók helye, minden
// függvényből láthatók, későbbiekben
// (lehetőleg) ne használjuk. (Ezen
// változók akkor globálisak, ha egy
// modulból áll a program.)
int main() // BREAKPOINT ITT !!!
{
char ch; // lokális változók deklarálása
// kezdeti értékadás nélkül!
int a, b, c, d, e, f, g;// lokális változók csak a függvényen
// belül láthatók, most main()-on belül.
// FIGYELEM; alapból a számábrázolás előjeles (+/-)
a = sizeof(ch); // 'ch' nevű, 'char' típusú (1 bájtos) változó
// 'ch' változó méretét átadja az ’a’
// változónak (így a értéke 1 lesz).
b = sizeof(char); // közvetlenül a típus nevét is bele írhatjuk
c = sizeof(unsigned char); // a sizeof() operátor argumentumába
d = sizeof(int); // előjeles EGÉSZ számábrázolás
e = sizeof(unsigned int); // előjel nélküli EGÉSZ számábrázolás
f = sizeof(float); // ez a kompatibilitás miatt van már
g = sizeof(double); // újabb fordítók ezt tekintik alaptípusnak
// a 'float' és a 'double' típusok, valós számtípusok, azaz
// előjeles egész vagy tizedes pontos tört értékek is lehetnek
return 0;
}Namost én ezt bemásolom, majd a jelölt helyre rakok egy breakpointot. Nyomok egy F8-at, majd nyomnám az F7-et, de semmi értelme. Egyrészt a Watches ablak teljesen üres, másrészt nem lép a sorok között.
kovisoft: bocsi, teljesen fogalmatlan vagyok ilyen téren, ma láttam életem első C kódját.
Leírtam ebben a hozzászólásban, hogy hogy csináltam.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Magga: PLEX: multimédia az egész lakásban
- Steam Deck
- Kuponkunyeráló
- Rezsicsökkentés, spórolás (fűtés, szigetelés, stb.)
- Fájhat Elon feje: mindjárt kész a Starlink-rivális
- Hardcore café
- Olcsó vs. drága egér: melyiknél érzed meg igazán a különbséget?
- Külföldi rendelések: boltok, fizetés, postázás
- Fejhallgató erősítő és DAC topik
- Milyen alaplapot vegyek?
- További aktív témák...
- Logitech PRO-X 981-000818 (Bontatlan)
- SteelSeries Arctis Nova Pro Wireless (Bontatlan)
- ZBook Fury 16 G10 16" FHD+ IPS i7-13850HX RTX 3500 Ada 32GB 1TB NVMe ujjlolv IR kam gar
- Samsung Galaxy A53 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- Xiaomi Redmi Note 13 Pro 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- 129 - Lenovo Legion Pro 7 (16ARX8H) - AMD Ryzen 9 7945HX, RTX 4080 (ELKELT)
- 172 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5080
- Apple iPhone 12 Pro Max 128GB, Kártyafüggetlen, 1 Év Garanciával
- GYÖNYÖRŰ iPhone 13 Pro 256GB Sierra Blue - 1 ÉV GARANCIA, Kártyafüggetlen, 100% Akkumulátor,MS3379
- Lenovo magyar laptop billentyűzetre van szükséged? Akármelyik verzióban segítünk!
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

Leírtam ebben a hozzászólásban, hogy hogy csináltam.
