Ú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!
- - 64% Thinkpad T14 A+ / új akku ! gyárilag Magyar / 14" FHD / i5-10310 // 16/512G / +SZLA +GARANCIA
- Vivobook 15 E510KA-EJ562WS 15.6" FHD Celeron N4500 4GB 128GB magyar vbill új akku gar
- Apple Watch Ultra - garis 2026.01.17-ig
- Szép állapot! LENOVO ThinkPad T14s i7-165G7 / 16GB / 512GB SSD / Windows 11 Pro
- Kitűnő állapot! LENOVO ThinkPad T14s i7-165G7 / 16GB / 512GB SSD / Windows 11 Pro
- Apple iPhone 13 Pro 128GB,Adatkabel,12 hónap garanciával
- Gamer PC-Számítógép! Csere-Beszámítás! I7 12700E / RTX 3060Ti / 32GB DDR4 / 512GB Nvme SSD
- BESZÁMÍTÁS! ASRock Formula OC RX 6900 XT 16GB videokártya garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone i5 14400F 16/32/64GB RAM RX 9060 XT 16GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB DDR5 RAM RTX 5070 12GB GAMER termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest