Új hozzászólás Aktív témák
-
Jester01
veterán
C89 szabvány szerinti C nyelvben illetve C++ nyelvben csak fix méretű tömb van. C99-ben van dinamikus is. GCC meg szeret alapból nagyon laza lenni, házi feladat vagy hordozható kód esetén ajánlott a -ansi -pedantic -Wall. Ezen felül bizonyos warningok meg csak bekapcsolt optimalizáció mellett jelenkeznek.
MOD: haha a klónom gyorsabb volt
Sőt tulajdonképpen mindenki. Na mindegy.
MOD #sok:
$ gcc -ansi -pedantic -Wall dab.c
dab.c: In function 'f':
dab.c:5: warning: ISO C90 forbids variable length array 'x' -
"Egyébként nem úgy volt, hogy stacken tömböt csak fix méretben lehet létrehozni?"
Én nem tudok ilyenről és nekem ez teljesen jól működik:
#include <stdio.h>
void f(int size)
{
int x[size];
printf("%d\n",sizeof(x));
}
int main()
{
int c;
for ( c = 1 ; c < 10 ; c++ ) f(c);
return 0;
}./x
4
8
12
16
20
24
28
32
36szerk: látom, neked volt lelkierőd elolvasni a dokumentációt
-
Karma
félisten
Áááháá! Megvan! Nem vagyok teljesen up-to-date, a C99 szabvány engedi a változó hosszúságú tömböt is stacken, ha a blokk elején ismert a hossz, tehát pl. egy függvény paramétere a tömb mérete.
float read_and_process(int sz)
{
float vals[sz]; // VLA, size determined at runtime
for (int i = 0; i < sz; i++)
vals[i] = read_value();
return process(vals, sz);
}#1460: Wikipédián találtam
Elnézve a C99 újításait, gyanúsan C89-et "oktatott" anno Poppe prog1 órán.
Ú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!
- VR topik (Oculus Rift, stb.)
- Autóápolás, karbantartás, fényezés
- Xbox Series X|S
- Samsung Galaxy A34 - plus size modell
- Ha Kínában repülsz, és nem ilyen a hordozható töltőd, elveszik a reptéren!
- Kerékpárosok, bringások ide!
- Milyen hagyományos (nem okos-) telefont vegyek?
- Milyen videókártyát?
- Xiaomi 15 Ultra - kamera, telefon
- Építő/felújító topik
- További aktív témák...
- ASUS TUF Gaming F15 gamer laptop
- S. Mario PC! Hogy fusson a Super Mario! I5 14400F / RX 6900XT 16GB / 32GB DDR5 / 1TB SSD
- Motorola edge 40 neo - makulátlan, ár-érték bajnok
- Dell Latitude 5500 8.gen-i5/16GB RAM/256SSD/WIN11/GARANCIA
- LOQ 15IRX9 15.6" FHD IPS i7-13650HX RTX 4060 16GB 1TB NVMe magyarított (lézerezett) vbill gar
- LG 55C4 - 48" OLED evo - 4K 144Hz - 0.1ms - NVIDIA G-Sync - FreeSync - HDMI 2.1 - A9 Gen7 CPU
- Samsung Galaxy A36 5G / 6/128GB / Kártyafüggetlen / 12Hó Garancia / BONTATLAN
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Gamer PC-Számítógép! Csere-Beszámítás! I7 12700E / RTX 3060Ti / 32GB DDR4 / 512GB Nvme SSD
- Microsoft Surface Pro // Surface // Surface laptop // 7-10.gen i5, Ryzen // 12,5 13,5 15 //
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Laptopműhely Bt.
Város: Budapest