Derleme hatası: ')' - tüm kontrol yolları bir değer döndürmez
Tüm kod dalları sizin için bir değer döndürmez, şöyle yazmanız gerekir:
int f()
{
int res = 0 ;
while ( true ) //или for(;;)
{
//много строк c return, continue, без break
res = 0 ; break или continue//много строк c return, continue, без break
res = 1 ; break или continue
}
return (res);
}
Veya bunun gibi:
int f()
{
while ( true ) //или for(;;)
{
//много строк c return, continue, без breakreturn0 ;
//много строк c return, continue, без breakreturn1 ;
}
return (значение возвращаемое по умолчанию если не выполнены предыдущее return );
}
Derleme hatası: ')' - tüm kontrol yolları bir değer döndürmez
Tüm kod dalları sizin için bir değer döndürmez, şöyle yazmanız gerekir:
Veya bunun gibi:
Tüm kod dalları sizin için bir değer döndürmez.
Onun verdiği örnekte - her şey. while(true) öğesinden çıkış, yalnızca break deyimi (sahip olmadığı) veya geri dönüş ile mümkündür.
tartışmayacağım. Ancak derleyici hata mesajı ')' - tüm kontrol yolları bir değer döndürmez, aksini söylüyor.
Aynısını C++ da deneyin
C++'ın bununla ne ilgisi var?
....
Kodunuza daha yakından bakın. Hatanızı kaçırdım , return ifadesinin dönüş değeri parantez içinde yazılmalıdır. return(0) ve return 0 yazdınız;
C++'ın bununla ne ilgisi var?
Kodunuza daha yakından bakın. Hatanızı kaçırdım , return ifadesinin dönüş değeri parantez içinde yazılmalıdır. return(0) ve return 0 yazdınız;
Bu durumda C ++ standart olarak hareket ettiği göz önüne alındığında
Yani, C++ ile yazıyorsunuz ama hepsini mql'de mi derliyorsunuz?
Neden fazladan parantezler?
Bu , mql dilinin sözdizimidir .
Yani, C++ ile yazıyorsunuz ama hepsini mql'de mi derliyorsunuz?
Bu , mql dilinin sözdizimidir .
Parantez olmadan bir değer döndürebilirsiniz. Sadece dene.
Yani, C++ ile yazıyorsunuz ama hepsini mql'de mi derliyorsunuz?
Bu , mql dilinin sözdizimidir .