4 AĞUSTOS 2015, Salı
Göstericiler bu kullanım öngörülemeyen ne yapar?
Şu anda göstericiler öğreniyorum ve benim Profesör bir örnek olarak bu kod parçası verilmiştir:
//We cannot predict the behavior of this program!
#include <iostream>
using namespace std;
int main()
{
char * s = "My String";
char s2[] = {'a', 'b', 'c', '\0'};
cout << s2 << endl;
return 0;
}
Programın davranışlarını tahmin edemeyiz, bu yüzden yorum yazdı. Tam olarak tahmin edilemez olsa ne yapar? Bunda hiçbir sakınca görmüyorum.
CEVAP
4 AĞUSTOS 2015, Salı
Programın davranışlarını hatalı biçimlendirilmiş çünkü varolmayan.
char* s = "My String";
Bu yasadışı. 12 yıldır itiraz vardı 2011 öncesinde.
Doğru çizgi
const char* s = "My String";
Onun dışında program gayet iyi. Profesörün az viski içmek gerekir!
Bunu Paylaş:
CYBH ıota ne yapar::ıota için geçerli ...
C standart iostreams için düşük perfor...
Soru Qt: Q_OBJECT makrosu Ne yapar? Ne...
Google'in Sayfa Hızlı görüntü sık...
Neden NaN^0 == 1 yapar...