Qt4 C++ consol aplication "enter" sorunu.

Başlatan karasu, 23 Eylül 2010 - 00:50:18

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

karasu

yine ben yine kıl bir sorun >:( :D

QT4 de C++ Aplication yapıp çalışırdığımda consolda verii girişi yaparken entera ne kadar bassam almıyor.
alltaki örnekteki "Enter the length: " yazısına rakam girip enterladığım halde diğer satıra geçimiyor örnek.

Netbeans'ta iken terminal oğul çalışmaya çalışırken hata oldu diyodu. root olarak giriş yapıp onu halletmiştim ama bu yemedi.

Çok teşşekkürler şimdiden.


#include <iostream> 
using namespace std; 
 
int main() 

  int length;
  int width; 
 
  cout << "Enter the length: ";
  cin >> length; // input the length

  cout << "Enter the width: ";
  cin >> width;  // input the width 
 
  cout << "The area is "; 
  cout << length * width;
 
  return 0; 
}

sem

C++ söz dizimini bilmiyorum fakat "gördüğüm kadarı ile" kodda sıkıntı yok gibi... Uçbirimden derlemeyi denediniz mi?
".NET çemberinden geçen lirisist etkisi bir 'Volcano', bir yüzüm Java bir yüzüm Badalamenti Don Tano"
----------------------------------------------------------------------------------------------------------------------
"Her yer ölüm yine, burası dünya
Derken ölüm bile bu nasıl dünya?
Benden ölüm dile, batıyor gün yine
Burası dünya?

krwlng

Ben betiği derleyip çalıştırdım fakat bir sorun göremedim, normal şekilde enter tuşuna bastıkça alt satıra indi.

krwlng@krwlng-lucid:~/Masaüstü$ c++ -o test test.cpp
krwlng@krwlng-lucid:~/Masaüstü$ ./test
Enter the length: 10
Enter the width: 20
The area is 200
krwlng@krwlng-lucid:~/Masaüstü$


Bu şekilde daha açıklayıcı olur sanırım.
http://twitter.com/yusuFBrn

Ali İsmail Korkmaz, FENERBAHÇE Yıkılmaz!

sem

Aynı şekilde bende de derlendi ve "çalışma zamanı hatası", uyarı ya da benzeri bir durum olmadı...
".NET çemberinden geçen lirisist etkisi bir 'Volcano', bir yüzüm Java bir yüzüm Badalamenti Don Tano"
----------------------------------------------------------------------------------------------------------------------
"Her yer ölüm yine, burası dünya
Derken ölüm bile bu nasıl dünya?
Benden ölüm dile, batıyor gün yine
Burası dünya?

karasu

kodda ve derlemede sıkıntı yok netbeans sorunsuz ama qt4 ile çalıştırınca enter yemiyor.

eribol


sem

"QT ile çalıştırınca" dediğimiz QT  grafik kütüphanesi değil mi, ayrıca kendisine özel bir derleyici mi var, merak ettim de...
".NET çemberinden geçen lirisist etkisi bir 'Volcano', bir yüzüm Java bir yüzüm Badalamenti Don Tano"
----------------------------------------------------------------------------------------------------------------------
"Her yer ölüm yine, burası dünya
Derken ölüm bile bu nasıl dünya?
Benden ölüm dile, batıyor gün yine
Burası dünya?

guestwho

   
Alıntı yapılan: karasu - 23 Eylül 2010 - 12:39:49
kodda ve derlemede sıkıntı yok netbeans sorunsuz ama qt4 ile çalıştırınca enter yemiyor.
Amacın C++ 'da zaten yapmış olduğun gibi STL (Standart Template Library) kullanarak değil de Qt4 kütüphanelerini kullanarak konsolda veri alış-verişi yapmaksa programın başında
#include <iostream>
    sınıfı yerine
#include <QTextStream>
    "QTextStream" sınıfını çağırmalısın. Konsolda çıktı vermek için kaynak kod basit anlamda şuna benzeyecek:
#include <QTextStream>

int main()
{
   QTextStream out(stdout);
   out << "Merhaba\n";
}

    Derlemek içinse:
qmake-qt4 -project
qmake-qt4
make

    Qt4 ile programlamaya giriş için: http://qt.comu.edu.tr/

Alıntı yapılan: sem0900 - 23 Eylül 2010 - 19:26:37
"QT ile çalıştırınca" dediğimiz QT  grafik kütüphanesi değil mi, ayrıca kendisine özel bir derleyici mi var, merak ettim de...
Evet, Qt ile geliştirilen projeler "qmake" kullanılarak derlenir.
You want weapons? We're in a library. Books are the best weapon in the world. This room's the greatest arsenal we could have. Arm yourself!

sem

Alıntı yapılan: guestwho - 23 Eylül 2010 - 19:35:10
Alıntı yapılan: sem0900 - 23 Eylül 2010 - 19:26:37
"QT ile çalıştırınca" dediğimiz QT  grafik kütüphanesi değil mi, ayrıca kendisine özel bir derleyici mi var, merak ettim de...
Evet, Qt ile geliştirilen projeler "qmake" kullanılarak derlenir.

Anladım, teşekkür ederim... Daha öncede C & GTK ile ilgili bir sorun olmuştu başlıklar arasında, sadece kütüphaneler dahil edilip (include) derleme sırasında da bağlacıyıa (linker) tanıtılıyordu, o tarz olmuyor mu diye düşündüm... Olmmuyor sanırım...
".NET çemberinden geçen lirisist etkisi bir 'Volcano', bir yüzüm Java bir yüzüm Badalamenti Don Tano"
----------------------------------------------------------------------------------------------------------------------
"Her yer ölüm yine, burası dünya
Derken ölüm bile bu nasıl dünya?
Benden ölüm dile, batıyor gün yine
Burası dünya?

karasu

Alıntı yapılan: sem0900 - 23 Eylül 2010 - 19:26:37
"QT ile çalıştırınca" dediğimiz QT  grafik kütüphanesi değil mi, ayrıca kendisine özel bir derleyici mi var, merak ettim de...

evet QT4 creator diye kendi IDE'si  var. :) görünümü kullanımı hoş :D

#include <QTextStream>
eklediğimde "no such file or directory" uyarısı veriyor. :/ yüklemem gereken paketmi var acaba :/.
gcc -v ve g++ -v komutlarından geriye versiyon numaram geri geliyor.

amacım C++ öğrenirken QT4 IDE sini kullanmaktı.

ilginiz için çok teşekkürler. :)

eribol

Biraz açmak gerekirse qmake, g++ derleyicisini kullanır ama biraz gelişmişidir(qt kütüphaneleri için kendisi parametreleri ekler). ayrıca qt2yi kullanabilmek için qt4-devel(tam ismi bilmiyorum) kurulu olması gerekiyor.

guestwho

Alıntı yapılan: eribol - 23 Eylül 2010 - 21:08:10
Biraz açmak gerekirse qmake, g++ derleyicisini kullanır ama biraz gelişmişidir(qt kütüphaneleri için kendisi parametreleri ekler). ayrıca qt2yi kullanabilmek için qt4-devel(tam ismi bilmiyorum) kurulu olması gerekiyor.
Tam olarak değil, qmake ile istediğin derleyiciyi kullanabilirsin...
Alıntı yapılan: sem0900 - 23 Eylül 2010 - 19:41:39
Alıntı yapılan: guestwho - 23 Eylül 2010 - 19:35:10
Alıntı yapılan: sem0900 - 23 Eylül 2010 - 19:26:37
"QT ile çalıştırınca" dediğimiz QT  grafik kütüphanesi değil mi, ayrıca kendisine özel bir derleyici mi var, merak ettim de...
Evet, Qt ile geliştirilen projeler "qmake" kullanılarak derlenir.

Anladım, teşekkür ederim... Daha öncede C & GTK ile ilgili bir sorun olmuştu başlıklar arasında, sadece kütüphaneler dahil edilip (include) derleme sırasında da bağlacıyıa (linker) tanıtılıyordu, o tarz olmuyor mu diye düşündüm... Olmmuyor sanırım...
Gcc ya da g++ gibi derleyiciler ile tek dosyadan oluşan kaynak kodu derleyebilir / bağlayabilirsin, ama birden çok dosyadan oluşan projelerde derleyici otomatik olarak hangi dosya nerede algılayamaz, bunun için "make" dosyalarına ihtiyaç duyulur , arkaplanda "qmake" in yaptığı şey de "make" dosyalarını otomatik olarak oluşturmaktan ibaret (hatta "qmake" için "make-maker" desek yanlış olmaz :) ) Qt platform bağımsız olduğu için farklı platformlarda farklı derleyiciler kullanılabiliyor örneğin QMAKESPEC değişkeniyle ya da "qmake -spec linux-g++" şeklinde parametre kullanımıyla platform/derleyici belirlenebilir...
Alıntı yapılan: karasu - 23 Eylül 2010 - 20:15:22
evet QT4 creator diye kendi IDE'si  var. :) görünümü kullanımı hoş :D

#include <QTextStream>
eklediğimde "no such file or directory" uyarısı veriyor. :/ yüklemem gereken paketmi var acaba :/.
gcc -v ve g++ -v komutlarından geriye versiyon numaram geri geliyor.

amacım C++ öğrenirken QT4 IDE sini kullanmaktı.

ilginiz için çok teşekkürler. :)
:) Bence bu durumda direk Qt platformuna giriş yapmasan daha iyi edersin çünkü bu tarz "framework" ler daha çok platform bağımsız yazılım geliştirmek için tasarlanmışlar, ben de C++ 'a doğru düzgün giriş yapmadan Qt ile birşeyler geliştireyim dedim ama olmadı (yanlış anlaşılmasın sen pekala yapabilirsin de :) ) demek istediğim öncelikle programlama dilini öğrenmeli yoksa "framework" ler ile biraz ezbere hareket etmiş oluyorsun dahası arkaplanda ne olup bittiği hakkında fransız kalabiliyorsun da. Qt Creator gerçekten kullanışlı bir geliştirme ortamı ama sadece Qt projesi geliştirmek için tasarlanmış , istersen "Kdevelop" u da kurup standart C++ projelerin için kullanabilirsin , Kdevelop bütün programlama dillerini destekleyen bir geliştirme ortamı, diğer projelerin için de rahatça kullanabilirsin. Kolay gelsin...
You want weapons? We're in a library. Books are the best weapon in the world. This room's the greatest arsenal we could have. Arm yourself!

eribol

Alıntı YapTam olarak değil, qmake ile istediğin derleyiciyi kullanabilirsin...
Biraz açmıştım :)

krwlng

Terminal uygulamasını Qt de yazmak tercih meselesidir fakat ne gerek var :)
http://twitter.com/yusuFBrn

Ali İsmail Korkmaz, FENERBAHÇE Yıkılmaz!

sem

Sanıyorum ki o kadarı artık bir yerden başlama, fonksiyonların kullanımına alışma sürecidir... Yoksa;  "Hello World" kadar gereksiz bir program yoktur sanırım =)=) Ama yazmayan da yoktur herhalde =)
".NET çemberinden geçen lirisist etkisi bir 'Volcano', bir yüzüm Java bir yüzüm Badalamenti Don Tano"
----------------------------------------------------------------------------------------------------------------------
"Her yer ölüm yine, burası dünya
Derken ölüm bile bu nasıl dünya?
Benden ölüm dile, batıyor gün yine
Burası dünya?

krwlng

Gerçekten bu hello world ve merhaba dünya olayı lorem ipsum dolor sit amet muhabbetine döndü, sanki o olmadan programcılığa giriş ilk ders yarım kalıyor =)
http://twitter.com/yusuFBrn

Ali İsmail Korkmaz, FENERBAHÇE Yıkılmaz!

eribol

Doc kısmında hep sabittir "Hello World" başlığı. O derecedir yani. Algoritma da yumurta pişirmek gibi işte :)

guestwho

Alıntı yapılan: krwlng - 23 Eylül 2010 - 23:42:34
Terminal uygulamasını Qt de yazmak tercih meselesidir fakat ne gerek var :)
Bazıları Qt'nin nesne yaklaşımını STL'in kendisinden daha organize buluyor, bu ne işe yarıyor dersen C++ ile bellek yönetimini sürekli kendin yapmak durumundasın , en basitinden bir değişken artık işe yaramıyorsa bellekte gereksiz yer kaplıyor demektir, meşhur bellek taşması hatasının sebeplerinden biri de işte bu gözden kaçmış değişkenlerdir , Qt bunların büyük ölçüde icabına bakar dahası sadece STL kullanarak xml ayrıştırma ya da network fonksiyonlarının üstesinden gelmek için tekerleği yeniden icat etmek zorunda kalırsın. Uzun lafın kısası Qt sanıldığı gibi sadece grafik arayüz kütüphanesi değildir.
You want weapons? We're in a library. Books are the best weapon in the world. This room's the greatest arsenal we could have. Arm yourself!

krwlng

#18
Terminal uygulamasından kastımın a=1 b=2 c=a+b gibi mantık olduğunu belirtmek isterim. Bunu yaparken bellek taşması yaşayacağımı zannetmiyorum.karasu, görünümü ve kullanımı hoş olduğu için seçmiş, ona istinaden öyle * bir şey söylemiştim.

Ekleme: karasu, bugün qt creator kurdum, görsel olarak gerçekten çok iyi eski Qt designer araçlarına göre çok hızlı ve düzgün çalışıyor neden tercih ettiğinizi daha iyi anladım.
http://twitter.com/yusuFBrn

Ali İsmail Korkmaz, FENERBAHÇE Yıkılmaz!

karasu

bende sizinle aynı fikirdeyim suan kağıt kalem üstünde çalışıyorum. grafik arayüz kullanmadan :)

@krwing, dimi çok hoş :D

sem

Sorun şu iletide, arkadaşın bahsettiği gibi de çözülmedi mi acaba?
".NET çemberinden geçen lirisist etkisi bir 'Volcano', bir yüzüm Java bir yüzüm Badalamenti Don Tano"
----------------------------------------------------------------------------------------------------------------------
"Her yer ölüm yine, burası dünya
Derken ölüm bile bu nasıl dünya?
Benden ölüm dile, batıyor gün yine
Burası dünya?