C uganka - August 2020

Vse o programiranju na in za PC

Moderatorji: Kroko, tilz0R

Output programa?

3734656530
4
21%
875187300
0
Brez glasov
4694
3
16%
12380
0
Brez glasov
22034
3
16%
307665630
6
32%
Compilation error
3
16%
 
Skupaj glasov : 19

C uganka - August 2020

OdgovorNapisal/-a tilz0R » 05 Avg 2020, 18:19

Napiši spodaj, kaj si izbral in zakaj si se tako odločil. Možnih odgovorov je več.

u8_int_ptr.png
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 1854
Pridružen: 18 Jan 2015, 00:12
Kraj: Črnomelj
Zahvalil se je: 231 krat
Prejel zahvalo: 528 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 255

Re: C uganka - August 2020

OdgovorNapisal/-a Kroko » 05 Avg 2020, 19:18

error C2440: 'initializing': cannot convert from 'void *' to 'unsigned int *'
Conversion from 'void*' to pointer to non-'void' requires an explicit cast
http://www.planet-cnc.com poskakuješ na eni nogi in žvižgaš alpske podoknice Kroko was here!
Uporabniški avatar
Kroko
 
Prispevkov: 4874
Pridružen: 14 Jan 2015, 12:12
Kraj: Ljubljana
Zahvalil se je: 690 krat
Prejel zahvalo: 1700 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: C uganka - August 2020

OdgovorNapisal/-a tilz0R » 05 Avg 2020, 19:26

Kroko je napisal/-a:
error C2440: 'initializing': cannot convert from 'void *' to 'unsigned int *'
Conversion from 'void*' to pointer to non-'void' requires an explicit cast


C kodo se prevaja s C prevajalnikom.
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 1854
Pridružen: 18 Jan 2015, 00:12
Kraj: Črnomelj
Zahvalil se je: 231 krat
Prejel zahvalo: 528 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 255

Re: C uganka - August 2020

OdgovorNapisal/-a zanka » 05 Avg 2020, 19:36

C prevajalnik ne najde stdint.h!
Uporabniški avatar
zanka
 
Prispevkov: 2689
Pridružen: 17 Mar 2016, 01:16
Zahvalil se je: 116 krat
Prejel zahvalo: 268 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 53

Re: C uganka - August 2020

OdgovorNapisal/-a tilz0R » 05 Avg 2020, 19:39

zanka je napisal/-a:C prevajalnik ne najde stdint.h!

C99 in naprej ga najde ;)
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 1854
Pridružen: 18 Jan 2015, 00:12
Kraj: Črnomelj
Zahvalil se je: 231 krat
Prejel zahvalo: 528 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 255

Re: C uganka - August 2020

OdgovorNapisal/-a zanka » 05 Avg 2020, 19:53

C koda se prevaja s C prevajalnikom. C prevajalnik iz leta 1998 je še vedno C prevajalnik.
Uporabniški avatar
zanka
 
Prispevkov: 2689
Pridružen: 17 Mar 2016, 01:16
Zahvalil se je: 116 krat
Prejel zahvalo: 268 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 53

Re: C uganka - August 2020

OdgovorNapisal/-a VolkD » 05 Avg 2020, 20:20

Kakšen je int za dani prevajalnik ?
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 43906
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 9717 krat
Prejel zahvalo: 5429 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 140

Re: C uganka - August 2020

OdgovorNapisal/-a tilz0R » 05 Avg 2020, 21:28

zanka je napisal/-a:C koda se prevaja s C prevajalnikom. C prevajalnik iz leta 1998 je še vedno C prevajalnik.

Torej je tvoj odgovor samo da je error?

VolkD je napisal/-a:Kakšen je int za dani prevajalnik ?

Odgovorov je možnih več.
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 1854
Pridružen: 18 Jan 2015, 00:12
Kraj: Črnomelj
Zahvalil se je: 231 krat
Prejel zahvalo: 528 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 255

Re: C uganka - August 2020

OdgovorNapisal/-a zanka » 05 Avg 2020, 21:48

Ne, moj odgovor je tudi ta, da se ne prevede.
Uporabniški avatar
zanka
 
Prispevkov: 2689
Pridružen: 17 Mar 2016, 01:16
Zahvalil se je: 116 krat
Prejel zahvalo: 268 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 53

Re: C uganka - August 2020

OdgovorNapisal/-a forest70 » 05 Avg 2020, 22:12

Litle endian 3734656530
Big endian 307665630
Izračunal z kalkulatorjem na PC
Ja, odgovorov je lahko več, ker so različni sistemi shranjevanja.
If you pay in bananas, you got monkeys.
Uporabniški avatar
forest70
 
Prispevkov: 2253
Pridružen: 14 Jan 2015, 01:11
Kraj: Koper
Zahvalil se je: 427 krat
Prejel zahvalo: 491 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 123

Re: C uganka - August 2020

OdgovorNapisal/-a VolkD » 05 Avg 2020, 22:17

3734656530 ali pa 22034.

Mogoče celo še kaj drugega.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 43906
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 9717 krat
Prejel zahvalo: 5429 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 140

Re: C uganka - August 2020

OdgovorNapisal/-a gumby » 05 Avg 2020, 22:59

Mislim, da je vsak odgovor pravilen oz. "odvisno od prevajalnika".
my brain hurts
Uporabniški avatar
gumby
 
Prispevkov: 2607
Pridružen: 14 Jan 2015, 19:49
Kraj: Lendava
Zahvalil se je: 110 krat
Prejel zahvalo: 619 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 63

Re: C uganka - August 2020

OdgovorNapisal/-a tilz0R » 06 Avg 2020, 10:42

Pravilni so 4 odgovori za dejanske številke in compiler error pri ANSI C (stdint.h).
Spodaj slika, ki grafično to pokaže. Še opisno:

  • - C standard pravi, da mora biti integer, signed ali unsigned vsaj 16-biten in maximalno 32-biten
  • - Rezultat je odvisen od 2 stvari: arhitekture CPU-ja (little ali big endian) in velikosti int-a
  • - Koda zgoraj je popolnoma veljavna in ne krši aliasing pravila pri castanju pointerjev
Priponke
Untitled.png
Untitled.png (11.31 KiB) Videno 166 krat
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 1854
Pridružen: 18 Jan 2015, 00:12
Kraj: Črnomelj
Zahvalil se je: 231 krat
Prejel zahvalo: 528 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 255


Vrni se na Programski jeziki

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost