İki yapılar (color.h
cinsinden) böylece tanımlamış:Önceden tanımlamaksızın bir yapı değişkeni işlev argümanı olarak iletmek mümkün mü?
hsv hsvCol = {i/255.0, 1, 1};
rgb col = hsv2rgb(hsvCol);
Sadece içeride değişken hsvCol
oluşturmak mümkün istiyorum:
typedef struct rgb {
uint8_t r, g, b;
} rgb;
typedef struct hsv {
float h, s, v;
} hsv;
hsv rgb2hsv(rgb color);
rgb hsv2rgb(hsv color);
Sonra çalışır main.c
aşağıdaki var hsv2rgb
parametresi, değişkeni oluşturmak ve parametre olarak iletmek zorunda kalmadan parametreler.
I Can:
Ben hangi :(
rgb col = hsv2rgb({i/255.0, 1, 1}); rgb col = hsv2rgb(hsv {i/255.0, 1, 1}); rgb col = hsv2rgb(hsv hsvCol {i/255.0, 1, 1}) rgb col = hsv2rgb(struct hsv {i/255.0, 1, 1});
Sorum şu derlemek (yukarıdaki iki satır yerine) Aşağıdaki, ne yazık ki hiçbiri her denedim Ben (ama besbelli farklı bir şekilde) hiç yapmaya çalıştığım şeyi?
ise 1, ben hakkında böylece gitmek nasıl?
'rgb col = hsv2rgb ((hsv) {i olarak yeniden yazılabilir /255.0, 1, 1}); – BLUEPIXY
Aw maaan, bu çok basit! Teşekkürler! –