Yanch の回答履歴
- Mac版eclipse(Java)のsysout.について質問です。
Mac版eclipse(Java)のsysout.について質問です。 Windowsのeclipse(java)で、「sysout.」と入力して「ctl+space」とすると、 「System.out.println();」と自動入力することができますが、Mac版のeclipse(java)で試したところ何も反応されませんでした。何か原因があるのでしょうか? (私は、今回Mac版の使用は初めてです。)
- 練習用プログラムを編集したいのですが・・・。下の男性か女性かを識別する
練習用プログラムを編集したいのですが・・・。下の男性か女性かを識別するプログラムに、処理を繰り返し実行し、[Ctrl+Z]が入力された時点で繰り返し処理を終了する機能を付けるにはどうしたらいいでしょうか。 また、実行例のように、入力男性数、入力女性数、総数を表示させたいです。 回答よろしくお願いします。 //『プログラム』 #include <stdio.h> int main(void) { int sx; printf("男性なら1を、女性なら2を入力してください:"); scanf("%d", &sx); printf("%d\n", sx); //確認用 while(sx!=1 && sx!=2) //条件 { printf("範囲外の入力です。再入力をしてください。\n"); printf("男性なら1を、女性なら2を入力してください:"); scanf("%d", &sx); printf("%d\n", sx); //確認用 } if(sx==1) printf("男性ですね。\n"); else printf("女性ですね。\n"); return 0; } ************************************************************** 『実行例』 男性なら1を、女性なら2を入力してください(終了は[Ctrl+Z]):1 男性なら1を、女性なら2を入力してください(終了は[Ctrl+Z]):3 範囲外の入力です。再入力をしてください。 男性なら1を、女性なら2を入力してください(終了は[Ctrl+Z]):4 範囲外の入力です。再入力をしてください。 男性なら1を、女性なら2を入力してください(終了は[Ctrl+Z]):2 男性なら1を、女性なら2を入力してください(終了は[Ctrl+Z]):^Z 最終結果: 男性数1 女性数1 総数2
- 締切済み
- abrikoos_siroop
- C・C++・C#
- 回答数5
- apache2.2とtomcat6.0(ssl設定済)の連携に関して質
apache2.2とtomcat6.0(ssl設定済)の連携に関して質問です。 環境(windows 2003 server,JDK1.6,eclipse3.5,struts1.3,postgresql8.4) apacheを使用して公開したいのですが、tomcatのssl設定が絡んでいる関係でうまくいきません。 tomcatでsslを設定せず、apacheでsslを設定した方が良いのか。 tomcatとapache両方でssl設定をした方が良いのか。 tomcatでsslを設定しているとapache2.2とtomcat6.0の連携はできないのか。 または、やり方が違うのか。 教えてください。 tomcat(ssl設定済)をapacheに連携したいのですが、Apache2.0以前の時と異なり、mod_jk/mod_jk2は要らなくなったみたいなので、インターネットを調べた結果 ■server.conf <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> をコメント <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> を追加 ■httpd.conf #LoadModule proxy_module modules/mod_proxy.so #LoadModule proxy_ajp_module modules/mod_proxy_ajp.so コメントを解除 <Location /jsp/> ProxyPass ajp://localhost:8009/jsp> </Location>
- javaのGenericsについて質問です。
javaのGenericsについて質問です。 現在、javaを勉強中です。javaのGenericsについて質問があります。 「JavaにおけるGenericsでは、クラスの型パラメータには正式には オブジェクト型しか指定することができない」とあります。 つまり、intはIntegerと記述するということですが、 配列の場合はどうなるのですか? 例えば Vector<Integer[]> とするとエラーになってしまいます。 Vector<int[]> にすると上手くいっているようなのですが、これでよいのでしょうか? もしこれでよいのであれば、Genericsの仕組みはどうなっているのでしょうか? 的外れな質問かもしれませんが、なにぶん初心者ゆえ、ご教授のほど、宜しくお願い申し上げます。
- ベストアンサー
- cyacya2000
- Java
- 回答数3
- C言語でのプログラミングについて。
C言語でのプログラミングについて。 プログラミング初心者です。年月日をパソコン本体から取得する方法が知りたいです。 具体的には、 int_year,month,day; year=○○○○; month=○○; day=○○; のような形にして、○の所にプログラムが自分で引っぱってくるようにしたいです。 初心者で分からない事だらけです。ご協力おねがいします。
- ベストアンサー
- noname#247928
- C・C++・C#
- 回答数3
- Java 文字コードのエンコーディングについて
Java 文字コードのエンコーディングについて こんばんわ。 eclipse3.5で開発(UTF-8)しているソースを、DOS窓でコンパイルすると、勝手にMS932でマッピングしようとするんですよね。 何故だかわかる方いらっしゃいませんか? また、解決策等を教えていただけると幸いです。 eclipseで開発してるのに、態々DOS窓でコンパイルしなくてもってのはなしでお願いします。(仕事上必要)
- 以下の内容について質問です.
以下の内容について質問です. 「EclipseとMySQL5.1を繋ぐJDBCドライバがほしいです.どこからダウンロードできますか?」 検索を行いましたが,ダウンロード先に飛べません. どなたかご存じの方いらっしゃいましたら回答宜しくお願いします.
- Eclipse 3.5 Galileo + CDT + cygwinで
Eclipse 3.5 Galileo + CDT + cygwinで、CやC++のプログラムを作りたいと考えています。 しかし、ビルドが通らず、困っています。 行った作業手順は、以下の通りです。 (1)まず、下記サイトを参考に、簡単なCプログラムを作りました。 http://www.c.csce.kyushu-u.ac.jp/~seiichirou/wiki/index.php?Makefile%A4%CE%BD%F1%A4%AD%CA%FD ----以下、作成したプログラム---- /* hello.c */ #include <stdio.h> void edajima(void); int main(int argc, char* argv[]) { edajima(); return 0; } /* edajima.c */ #include <stdio.h> void edajima(void); void edajima(void) { printf("わしが男塾塾長 江田島平八である!!\r\n"); } ----プログラムここまで---- (2)そして、Makefileを以下のように作成しました。 ----以下、Makefile---- # Makefile CC = gcc CXXFLAGS = -O2 -g -Wall -fmessage-length=0 OBJS = edajima.o hello.o LIBS = TARGET = hello.exe $(TARGET): $(OBJS) $(CC) -o $(TARGET) $(OBJS) $(LIBS) all: $(TARGET) hello.o: hello.c $(CC) -c hello.c edajima.o: edajima.c $(CC) -c edajima.c clean: rm -f $(OBJS) $(TARGET) ----Makefileここまで---- (3)次に、EclipseでCのMakefileプロジェクトの作成をしました。 ロケーションは、上記ソースやMakefileがあるディレクトリを指定しました。 (4)Eclipseのプロジェクトエクスプローラで、Makefileを右クリックし、[Makeターゲット]-[作成] でMakeターゲットを作成しました。 (5)Makefileを右クリックし、[Makeターゲット]-[ビルド]を実行すると、下記エラーが出て、 ビルドに失敗しました。 make hello gcc -c hello.c gcc hello.o -o hello hello.o:hello.c:(.text+0x17): undefined reference to `_edajima' collect2: ld returned 1 exit status make: *** [hello] Error 1 どうやら、edajima.cがコンパイルされていない様です。 cygwin上でmakeコマンドを実行すると、ビルドできるので、Makefileは間違っていないと思っているのですが・・・。 どなたか、分かる方、ご教授願います。
- ベストアンサー
- yossy_sas2000
- C・C++・C#
- 回答数3
- 文字列のメモリ保持期間とポインタについてわからないので教えてください。
文字列のメモリ保持期間とポインタについてわからないので教えてください。 よくポインタの説明に、文字列を使った下記のようなサンプルコードが紹介されます。 char* s; s = "abcdefg"; printf("%s",s); (http://www2.netf.org/pointer3.html から引用) この"abcdefg"により確保された領域がいつまで保持されるのかわかりません。 ・これを実行しているメソッドを抜けるまでなのか? ・free(s)するまでなのか?(free(s)しなければいけないのか?) この例だとprintfして終わっていますが、sを戻り値として返却して他で利用したり、オブジェクトを生成して、そのメンバ変数に obj1->field1 = "value"; というように格納して利用することとか考えると、領域は勝手に開放されず、やっぱり明示的にfreeするということでしょうか? freeしないといけない、なんて記述も見たことがなくよく理解できずにいます。 よろしくお願いします。
- ベストアンサー
- yukinori_111
- C・C++・C#
- 回答数3
- Eclipse 3.5 Galileo + CDT + cygwinで
Eclipse 3.5 Galileo + CDT + cygwinで、CやC++のプログラムを作りたいと考えています。 しかし、ビルドが通らず、困っています。 行った作業手順は、以下の通りです。 (1)まず、下記サイトを参考に、簡単なCプログラムを作りました。 http://www.c.csce.kyushu-u.ac.jp/~seiichirou/wiki/index.php?Makefile%A4%CE%BD%F1%A4%AD%CA%FD ----以下、作成したプログラム---- /* hello.c */ #include <stdio.h> void edajima(void); int main(int argc, char* argv[]) { edajima(); return 0; } /* edajima.c */ #include <stdio.h> void edajima(void); void edajima(void) { printf("わしが男塾塾長 江田島平八である!!\r\n"); } ----プログラムここまで---- (2)そして、Makefileを以下のように作成しました。 ----以下、Makefile---- # Makefile CC = gcc CXXFLAGS = -O2 -g -Wall -fmessage-length=0 OBJS = edajima.o hello.o LIBS = TARGET = hello.exe $(TARGET): $(OBJS) $(CC) -o $(TARGET) $(OBJS) $(LIBS) all: $(TARGET) hello.o: hello.c $(CC) -c hello.c edajima.o: edajima.c $(CC) -c edajima.c clean: rm -f $(OBJS) $(TARGET) ----Makefileここまで---- (3)次に、EclipseでCのMakefileプロジェクトの作成をしました。 ロケーションは、上記ソースやMakefileがあるディレクトリを指定しました。 (4)Eclipseのプロジェクトエクスプローラで、Makefileを右クリックし、[Makeターゲット]-[作成] でMakeターゲットを作成しました。 (5)Makefileを右クリックし、[Makeターゲット]-[ビルド]を実行すると、下記エラーが出て、 ビルドに失敗しました。 make hello gcc -c hello.c gcc hello.o -o hello hello.o:hello.c:(.text+0x17): undefined reference to `_edajima' collect2: ld returned 1 exit status make: *** [hello] Error 1 どうやら、edajima.cがコンパイルされていない様です。 cygwin上でmakeコマンドを実行すると、ビルドできるので、Makefileは間違っていないと思っているのですが・・・。 どなたか、分かる方、ご教授願います。
- ベストアンサー
- yossy_sas2000
- C・C++・C#
- 回答数3
- JSPでテキストボックスのループ作成についての質問
JSPでテキストボックスのループ作成についての質問 いつもお世話になっております。 現在、strutsで開発を行っているのですが1日中困っています。 JSPでテキストボックスを作成してループで10個に増やす処理をしようとしています。 property=aaa1,property=aaa2・・・・ という名前を作ってsetter/getterに入れ、SQLを発行してDBに保存をしたいと思っています。 1行だけならDBに登録できているのですがループで登録をしようとするとエラーになってしまい、調べたり周りに聞いたりしたところ、テキストボックスを作成したときにpropertyが変化していないから2行目以降が登録できないのではと指摘を受け、下記の様なソースを作成しました。 <% for (int a=1;a<=100;a++){ %> <tr> //テキストボックスを作成 <td> <html:text name="aa" property="aaa<%=a%>" size="10" value=""/></td> <td> <html:text name="bb" property="bbb<%=a%>" size="10" value=""/></td> <% } %> //数値を文字列に変換 <%="int a = Integer.toString(a)" %>" 現在、property="aaa<%=a%>"がaaa1としたいのですがaを1と認識してくれていません。 大変恐縮ですが、property=aaa1,aaa2…と変化する方法を教えていただけないでしょうか。 宜しくお願い致します。
- C++で構造体のコピーはできても == や != で比較はできないので
C++で構造体のコピーはできても == や != で比較はできないのでしょうか? struct ST { int a; int b[10]; }; ST a; ST b; a = b; // エラーなし if (a != b) { // エラーあり printf("違います"); }
- Java throwとthrowsの違いについて
Java throwとthrowsの違いについて sjc-pに向けて今更ですが、全ての予約語とその意味を理解しようとしています。 ネット・参考書で調べてみましたがいまいち違いがピンと来ない為、どなたか簡単な例で説明して頂けないでしょうか? よろしくお願い致します。
- test.csvの内容
test.csvの内容 "a","b","c","d" "e","f","g","h" "i","j","k","l" "m","n","o","p" "q","r","s","t" "u","v","w","x" "あ","い","う","え" "か","き","く","け" "さ","し","す","せ" "た","ち","つ","て" とし、真ん中のq,r,s,t以降の内容を表示させたく、下のようなプログラムを作成しました しかし、コンパイル後実行しようとするとエラーになってしまいます。どう直したらよいか教えて頂けますでしょうか? #include <stdio.h> #include <stdlib.h> #include <string.h> #define NAME "test.csv" #define SIZE 32 struct tb{ char a[SIZE]; char b[SIZE]; char c[SIZE]; char d[SIZE]; }; int main(void) { struct tb test; FILE *fp; char buff[SIZE]; long pos; pos=ftell(fp); fseek(fp,pos,SEEK_SET); while(fgets(buff,SIZE,fp) != NULL){ //各項目の設定 strcpy(test.a,strtok(buff,",\"")); strcpy(test.b,strtok(NULL,",\"")); strcpy(test.c,strtok(NULL,",\"")); strcpy(test.d,strtok(NULL,",\"")); printf("%s %s %s %s \n",test.a,test.b,test.c,test.d); } }
- 文字列の操作について
C言語での文字列検索についてご教授ください。 文字列: C:\test\test.txt 上記の文字列から"C:\test"を切り抜きたいのですが どのように行えばいいでしょうか。 宜しく御願い致します。
- 締切済み
- mayokeuma1
- C・C++・C#
- 回答数2
- JFrameとJPanelの最大化について
swingでアプリケーションを作成しています。 1つのフレーム上に複数のパネルを描画する(画面遷移)アプリです。 たとえば、ログイン用のパネル、メニュー用のパネルと言ったように用意しています。 ここで問題が発生しました。 フレームの最大化ボタンを押しても、パネルが最大化されず、パネル内に配置しているボタンなども位置の調整が行われません。 フレームにレイアウトマネージャーを指定しても、パネルは最大化されないのでしょうか? フレーム自体にボタンを配置すると調整はされるのですが・・・ 今のところクラス構成としては、 フレームクラス ログインパネルクラス メニューパネルクラス データ表示パネルクラス となっています。 ログインパネルのボタンを押されたら、ログインパネルを破棄し、メニューパネルを表示するといった作りにしています。 どのパネルを表示しているときにも、フレームの最大化ボタンが押された場合にパネルの最大化も行いたいのです。 どなたかご教授願えませんでしょうか?
- ベストアンサー
- tamutamu55
- Java
- 回答数2
- JFrameとJPanelの最大化について
swingでアプリケーションを作成しています。 1つのフレーム上に複数のパネルを描画する(画面遷移)アプリです。 たとえば、ログイン用のパネル、メニュー用のパネルと言ったように用意しています。 ここで問題が発生しました。 フレームの最大化ボタンを押しても、パネルが最大化されず、パネル内に配置しているボタンなども位置の調整が行われません。 フレームにレイアウトマネージャーを指定しても、パネルは最大化されないのでしょうか? フレーム自体にボタンを配置すると調整はされるのですが・・・ 今のところクラス構成としては、 フレームクラス ログインパネルクラス メニューパネルクラス データ表示パネルクラス となっています。 ログインパネルのボタンを押されたら、ログインパネルを破棄し、メニューパネルを表示するといった作りにしています。 どのパネルを表示しているときにも、フレームの最大化ボタンが押された場合にパネルの最大化も行いたいのです。 どなたかご教授願えませんでしょうか?
- ベストアンサー
- tamutamu55
- Java
- 回答数2
- 不明なエラー
「猫でもわかるC言語プログラミング」で独習しております。 深い意味などは分からないところも多いのですが 慣れるためにひたすらコーディングしております。 質問が要領を得ないかもしれませんがお許しください。 補足が必要でしたら教えてください。 第11章の最後の課題なのですが、Windowsのウィンドウを作成する課題になります。 いろいろ調べましたがエラーの原因がわかりません。 45、51、59行目でエラーがでており、 データのサイズ違いのようなのですが そのあとの「undefined reference to `GetStockObject@4'」 の部分が調べてみたのですが、わかりません。 エラー内容と、コードを以下に記します。 もしよろしければどなたかアドバイスお願いします。 よろしくお願いいたします。 ***環境*** エディタ:サクラエディタ コンパイラ:MinGW ***エラー内容*** C:\source2\c11>g++ -Wall template01.cpp template01.cpp: In function `ATOM InitApp(HINSTANCE__*)': template01.cpp:45: warning: cast from pointer to integer of different size template01.cpp:51: warning: cast from pointer to integer of different size template01.cpp:59: warning: cast from pointer to integer of different size C:\Users\****\AppData\Local\Temp/ccgXbaaa.o(.text+0x14f):template01.cpp: undefin ed reference to `GetStockObject@4' ***実際のコード*** // template.cpp #include <windows.h> LRESULT CALLBACK WndProc(HWND, UINT ,WPARAM, LPARAM); ATOM InitApp(HINSTANCE); BOOL InitInstance(HINSTANCE, int); char szClassName[] = "template"; //ウィンドウクラス int WINAPI WinMain(HINSTANCE hCurInst, HINSTANCE hPrevInst, LPSTR lpsCmdLine, int nCmdShow) { MSG msg; BOOL bRet; if (!InitApp(hCurInst)) return FALSE; if (!InitInstance(hCurInst, nCmdShow)) return FALSE; while ((bRet = GetMessage(&msg, NULL, 0, 0)) != 0) { if (bRet == -1) { break; } else { TranslateMessage(&msg); DispatchMessage(&msg); } } return (int)msg.wParam; } //ウィンドウクラスの登録 ATOM InitApp(HINSTANCE hInst) { WNDCLASSEX wc; wc.cbSize = sizeof(WNDCLASSEX); wc.style = CS_HREDRAW | CS_VREDRAW; wc.lpfnWndProc = WndProc; //プロシージャ名 wc.cbClsExtra = 0; wc.cbWndExtra = 0; wc.hInstance = hInst; //インスタンス wc.hIcon = (HICON)LoadImage(NULL, MAKEINTRESOURCE(IDI_APPLICATION), IMAGE_ICON, 0, 0, LR_DEFAULTSIZE | LR_SHARED); wc.hCursor =(HCURSOR)LoadImage(NULL, MAKEINTRESOURCE(IDC_ARROW), IMAGE_CURSOR, 0, 0, LR_DEFAULTSIZE | LR_SHARED); wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH); wc.lpszMenuName = (LPCSTR)szClassName; wc.hIconSm = (HICON)LoadImage(NULL, MAKEINTRESOURCE(IDI_APPLICATION), IMAGE_ICON, 0, 0, LR_DEFAULTSIZE | LR_SHARED); return (RegisterClassEx(&wc)); } //ウィンドウの生成 BOOL InitInstance(HINSTANCE hInst, int nCmdShow) { HWND hWnd; hWnd = CreateWindow(szClassName, //タイトルバーにこの名前が表示されます "windowを作成", WS_OVERLAPPEDWINDOW, // ウィンドウの種類 CW_USEDEFAULT, // x座標 CW_USEDEFAULT, // y座標 CW_USEDEFAULT, // 幅 CW_USEDEFAULT, // 高さ NULL, // 親ウィンドウのハンドル、親を作るときはNULL NULL, // メニューハンドル // クラスメニューを使うときはNULL hInst, // インスタンスハンドル NULL); if (!hWnd) return FALSE; ShowWindow(hWnd, nCmdShow); UpdateWindow(hWnd); return TRUE; } // ウィンドウプロシージャ LRESULT CALLBACK WndProc( HWND hWnd, UINT msg, WPARAM wp, LPARAM lp) { int id; switch(msg) { case WM_CLOSE: id = MessageBox(hWnd, "終了してもよろしいですか", "確認", MB_YESNO | MB_ICONQUESTION); if (id == IDYES) DestroyWindow(hWnd); break; case WM_DESTROY: PostQuitMessage(0); break; default: return (DefWindowProc(hWnd, msg, wp, lp)); } return 0; }
- setAttribute(String, int)は適用できない
setAttribute(String, int)は適用できない 今、servletでセッションの勉強をしています。 ある本に載っているソースコードをそのままコピーしたんですが、 「HttpSessionのメソッド setAttribute(String, Object)は(String, int)に適用できません。」 …というエラーが出て動きません。 こういう場合、実行するにはどうしたら良いのでしょうか? アクセスした回数をカウントすることなんてよくあると思うんです。 intも(Stringなんかも)Objectの下に含まれてるんじゃないんですか? intでも良い気がするんですけど…。 一応、ソースコードを貼っておきます: ### Sample229TestServlet.java ### package com.tips; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; public class Sample228TestServlet extends HttpServlet { /** * */ private static final long serialVersionUID = 1L; private int count = 0; public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=Shift_JIS"); PrintWriter out = response.getWriter(); HttpSession session = request.getSession(); session.setAttribute("param",count++); //問題の箇所 out.println("<html><head><title>Sample228</title></head><body>"); out.println("<h2>SessionAttributeListenerの例</h2>"); out.println("sessionの属性countが" + count + "に変化しました。"); out.println("</body></html>"); out.close(); } } ### Sample228.java ### package com.tips; import javax.servlet.ServletContext; import javax.servlet.http.HttpSessionAttributeListener; import javax.servlet.http.HttpSessionBindingEvent; public class Sample228 implements HttpSessionAttributeListener { public void attributeAdded(HttpSessionBindingEvent event) { } public void attributeRemoved(HttpSessionBindingEvent event) { } public void attributeReplaced(HttpSessionBindingEvent event) { ServletContext app = (event.getSession()).getServletContext(); app.log(">> Sample228 Listener detects attribute changed."); } } …必要であれば補足します。では、宜しくお願いします。
- ベストアンサー
- futureworld
- Java
- 回答数1