1read 100read
2012年3月PCサロン223: C言語初心者質問総合 (854) TOP カテ一覧 スレ一覧 2ch元 削除依頼
Granado Espada PC関連スレ Vol.2 (403)
?パソコン雑誌ならどれを買う? (169)
女の子が持ってたらカワイイ☆と思うパソコン☆ (127)
一番使われないキーボードのキーは? (146)
【構成】BTO購入相談室【見積もり】■67 (220)
■女のくせに趣味がパソコンの奴マジきめえ (218)

C言語初心者質問総合


1 :04/03/26
っということでよろしく

2 :04/03/26
   .__
  J_†_|   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   (,,゚Д゚) <  悩める2ゲッター達よ、集いなさい。
  ハ ̄ ̄`つ | 自らの罪を告解し、きなさい。
  し ╋|   | 大いなる2ゲット神のもとに…ゲットー!
   |___|   \__________________
   ∪ ∪

3 :04/03/26
漠然とした質問すみません。
Cのコマンドライン引数とはどうやって使うのでしょうか?
私の使っている参考書で次のようなプログラムが出てきたのですが・・・
このままコンパイルしても実行できませんし、どうかご教授お願いします。
#include <stdio.h>
int main(int argc,char *argv[])
{
int i;
for(i=1;i<arqc;i++) printf("%s",arqv[i]);
return 0;
}

4 :04/03/26
>>3
5行目。q→g

5 :04/03/26
さっきの質問をこれでご教授おねがいします、
#include <stdio.h>
int main(int argc,char *argv[])
{
int i;
for(i=1;i<arqc;i++) printf("%s",arqv[i]);
return 0;
}

6 :04/03/26
#include <stdio.h>
int main(int arqc,char *arqv[])
{
int i;
for(i=1;i<arqc;i++) printf("%s",arqv[i]);
return 0;
}
これでした、おねがいします

7 :04/03/26
#include <stdio.h>
int main(int argc,char *argv[])
{
int i;
for(i=1;i<argc;i++) printf("%s",argv[i]);
return 0;
}
こうだよヴぉけ

8 :04/03/26
#include <stdio.h>
int main()
{
printf(">>1shime");
return 0;
}
こうだろヴぉけ

9 :04/03/26
>>3
arqcなんて変数どこで宣言してるんですか?

10 :04/03/26
>>3
キミはDOS開いてformat c:とうって円たーおしてほしい

11 :04/03/26
#include <stdio.h>
long main(long argc, char **argv){
  long i;
  for(i=1; i<argc; i++){
    printf("%s", argv[i]);
  }
  return(0);
}

12 :04/03/26
つうか>>6は通るだろ。

13 :04/03/26
単にコマンドライン引数が何か分かってないだけだな。

14 :04/03/26
>>13
そのとおりです。
説明お願いします。

15 :04/03/26
実行はできてもなにも起こらないのですけど、コンパイルした奴はどのようにすればつかえるのですか?

16 :04/03/26
つーかもー
#いんくたぁ〜ん <stdio.h>
main(void)
{
printf("くんにぃ\n");
}
これで勘弁してください

17 :04/03/26
>>15
君には向いてない
なんか違うことやった方がいいよ

18 :04/03/26
ふぅ・・・たくさん釣れたわけだが・・・。

19 :04/03/26
>>15 4連鎖すべし。

20 :04/03/27
>>3
コンパイラ、何使ってるの?

21 :04/03/27
Turbo Pascal

22 :04/03/27
>>21
そんな縄文時代の言語は他所でやってください。

23 :04/03/27
漠然とした質問すみません。
Pascalのコマンドライン引数とはどうやって使うのでしょうか?
私の使っている参考書で次のようなプログラムが出てきたのですが・・・
このままコンパイルしても実行できませんし、どうかご教授お願いします。
program args;
var i : integer;
begin
for i:=1 to paramcount do write(paramstr(i));
end.

24 :04/03/27
LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄ ̄ ̄戎 ̄ ̄ ̄ ̄橋 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
                          .___
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄┬  ┬ ̄ ̄ ̄ ̄
            ミ  _ _  ミ へヘ  ニハハ │  │
 ココ糞スレの    〃┏━ ヽ 、/〃⌒⌒ヽ   │  │
  臭いが    |  ノノハ))))〈〈 ノノノハ))).   │  │
  するよ〜!!  .リリ ´∀`)リ |ヽ|| ´∀`||   │  │
          ⊂# ∞ #つ ⊂l~V† Vつ.  │  │
           <__ ∞___>   く____ >.  │  │
.            (_丿 l_ノ      し l_ノ     │  │
.                           │  │
〜〜          〜〜〜          〜〜         〜
     〜             〜〜           〜〜        〜〜

25 :04/03/27
普通はargcで回すもんなの?
GetCommandLineなりgetoptなり使ったほうがいいと思ってるんだけど、
どうなんでしょう

26 :04/03/27
普通って何を想定していまつか?

27 :04/03/27
質問です。unsigned charの変数に255をいれたつもりですが
いつのまにか-1になってました。多分intの数字とやりとりしたのが
原因だと思うのです。そこでint の数値をunsigned charにするとき
こういう問題を起こさずにすむ方法があれば教えてください。

28 :04/03/27
>>27
どうやったら-1になるの?
unsigned char c = 255;
int n = c;
unsigned char d = n;
ってやっても、d = 255だよ。

29 :04/03/27
どっかでcharにしちゃったんじゃねーの?

30 :04/03/27
明示的に
int n = (char)c;
とかでもしない限り、-1にするほうが難しいと思う。

31 :04/03/27
intが実は、1バイトだったっとか。
しかもターゲットは 8ビットマシン。

32 :04/03/27
>>28
ありがとうございます。
実はchar と unsigned charを混ぜて使ってたのに気づきました。

33 :04/03/27
C言語って なんですか。

34 :04/03/27
>>33
Cnglishっていう言語のこと

35 :04/03/28
>>3
このページなんかはどうでしょう?参考になりませんか?
http://c-production.com/contents/c/sec10.html
さて、質問する前に次のことを守ってください。
1、自分でgoogleなどで検索し、調べてみる。またどこまで調べて、どこまでわかったが、どこがわからないかも書いてください。
 (上のURLは、"コマンドライン C言語”)で検索しました。)
2、プログラムのソースだけではなく、コンパイルの環境(OS、コンパイラ、ライブラリ等)の情報を書いてください。
3、2chに書き込みをするまえにもう一度読み返し、書いた文章を構成してください。(自分もなかなかできてないのですが。。。)
以上です。C言語の勉強ははじめはたいへんかもしれませんが、だんだん楽になってくるものです。がんばってください。

36 :04/03/28
コマンドライン引数 http://www9.plala.or.jp/sgwr-t/c/sec11-4.html

37 :04/03/29
P = (struct person *)mallco(sizeof(struct person ));
先頭アドレスの代入だけ
なんでこの書き方がOKなのか分りません。

38 :04/03/29
>>3
ネタとは思うが。エラー修正したとして、こうならない?
プロンプト>a.out age sage mage moge
agesagemagemogeプロンプト>

39 :04/03/29
mallocは、
void* mallo( size_t );
という関数。
mallco(sizeof(struct person ));
の戻り値は、void* であって struct person* でないので、
キャストして代入する必要がある。

40 :04/03/29
いやCならキャストの必要ないぞ。キャストが必要なのはC++。
それはそれとしてmallco?

41 :04/03/29
やっちまった・・_| ̄|○

42 :04/03/29
>>41
さいってい!

43 :04/03/29
またーり汁(´・ω・`)ノ

44 :04/03/30
malloc使わない。calloc使う。

45 :04/03/30
#include <stdio.h>
#include <string.h>
int main(void){
char str[64];
int i;
double data[10]; ←
for(i = 0; ; i++){
printf("data[%d] = ", i);
scanf("%s", str);
if(strcmp(str, "E") == 0) break;
data[i] = atof(str);
}

順番に数字をdataに入れてゆき、Eが入力されたら入力をやめるっての作ってみたつもりなんですけど、
dataの配列の数を指定しないで、入力された分だけ配列を作るのってどうやったらいいですか?

46 :04/03/30
俺Perlしか分からんし

47 :04/03/30
>>45
mallocでホイテョ━━━(゚∀゚)━━━━イ!!
…(・∀・)ホイテョイ!!

48 :04/03/30
こんなメモリ操作、mallocで簡単簡単!ホイテョイ!

49 :04/03/30
>>47-48
なるほど…。ありがとうございます、勉強します。

50 :04/03/30
あ、終了条件がEが入力された時だけの場合は、
線形リストでホイテョイだな、たぶん。
これにも一応mallocは使うと思うけど、望みの物はこれだな、たぶん。

51 :04/03/31
ホイテョイ厨はホイテョイスレにカエレだよもん

52 :04/03/31
C++だったら.
vector<double> data;
while (1)
{
string str;
cin >> str;
if (str == "E")
break;
data.push_back(atoi(str.c_str()));
}

53 :04/04/02
>>52
ホイテョ━━━(゚∀゚)━━━━イ!!
…(・∀・)ホイテョイ!!

54 :04/04/02
そんなもんレンジでチンしたら出来上がりだよ!

55 :04/04/02
>>54
ホイテョ━━━(゚∀゚)━━━━イ!!
…(・∀・)ホイテョイ!!

56 :04/04/04
ニューラルネットワークやGAの簡単なC(perlでもいい)のサンプルソースなど、どこかにあったら
教えてください。(高校程度でわかるようなの)
ググってはみたものの難しいのやらC++とかしか見つからなかったので
お願いします。

57 :04/04/05
>>56
ホイテョ━━━(゚∀゚)━━━━イ!!
…(・∀・)ホイテョイ!!

58 :04/04/21
BLOGのMovable TypeってC言語ですか?

59 :04/04/21
>>58
(´・ω・`)ホイテョ━イ

60 :04/04/22
C言語って関数で出来てるじゃないですか
その始めから付いてる関数ってどうできてるんですか?
標準関数を僕も作りたいんですけど
printfってどうやって作るんでしょうか?

61 :04/04/26
>>60
printfなんてあるから作らなくていい。
お前が作る関数なんか標準関数とは認めない。
どうせなら
Javaって便利なクラスでも作ってくれYo

62 :04/04/26
>>61
(´・ω・`)ホイテョ━イ

63 :04/04/29
WindowsXP,Microsoft Wordで作成したレポートの行間を全てダブルスペースにしなくてはならないんですが、やり方のわかる方、教えてください。

64 :04/04/29
<Font Size="7" Color="Red">テスト</Font>

65 :04/06/18
初心者というか今から始める入門者です。
 オセロや将棋や囲碁を自分のPCで一からプログラムしたいのですがお勧めの
書籍&ソフトを教えてください

66 :04/06/18
手っ取り早く作りたいならHSP
コンピュータとの対戦で、強い将棋プログラムを目指すならCかC++
ぬるぽしたければJAVA

67 :04/06/18
スマソ。スレタイ読んでなかった。
猫でもわかる でぐぐれ。

68 :05/01/24
キーボードから入力を受付けるときに、
「キー連打」と「一定時間以上キー押しっぱなし」
を区別したいのですが、どうすればよいでしょうか?
kbhit()とgetch()を使ってキー入力を判断しているのですが、
私には今のところ、区別できません。
だれか教えてください。
よろしくお願いします。

69 :05/01/25
以下の問題ができなくて完全にお手上げ状態です。なにとぞアドバイスをお願いします。
1 文字列をキーボードから読み取り、その文字列を暗号化した文字列を表示するプログラム。ただし、入力する文字列は英数記号のみとする。
2 暗号化は次の方法で行う。文字列中のローマ字を大文字小文字を問わず下記に示すとおりの置き換えを行う。
3 ローマ字以外の文字は暗号化しない。
a b c d e f g
  ↑ ↑ ↑ ↑ ↑ ↑ ↑
↓ ↓ ↓ ↓ ↓ ↓ ↓
n o p q r s t

70 :05/01/25
他スレに移動しました。大変失礼しました。

71 :05/01/26
あのぉ
明日C言語のテストがあるのですが
ポインタと構造体の
何か詳しく説明してるサイトないでしょうかね??

72 :05/01/28
すみません、
unsigned char* pA;
unsigned char* pB;
unsigned char* pC;
if (pA == pB){
pB = pC;
}
これをマクロにするとどうなるのでしょうか?

73 :05/01/31
http://candybox.tv/
ここかな

74 :05/02/06
(unsigned char *pA,*pB,*pC;((pA==PB)?pB=pC:;)))
こんな感じではないですかね。コンパイルして試してませんので、参考として。
でも、変数の宣言してますので、if分やfo文の()の中には書けませんよ。

75 :05/02/06
失礼しました。
{unsigned char*pA,*pB,*pC;((pA==PB)?pB=pC:;)}
こっちの方がまともでした。

76 :05/02/14
F(T)=6.72*10^(-4)*(1000-T)-5.67*10^(-8)*0.5*(T^4-600^4)の
はさみうち法をC言語でのプログラムを教えていただけないでしょうか??
ホントよくわかんないので、よろしくお願いします

77 :05/02/14
>>72
pA, pB, pC が既に定義されていてなんらかの値が入っていると仮定する。
if (pA == pB){
pB = pC;
}
の部分だけなら
#define COMP_A_B_SET_C(A,B,C) ((A==B)?(B=C):B)
でいいんでないかい?
>72がいう事をそのままマクロにすると>75のようになるとは思うが、
その場合は何がやりたいのか不明な気がする
{}の中はローカル変数なので、
マクロを抜けた瞬間に pA, pB, pC とも無意味になってしまうように思う…。

78 :05/02/14
>>77
その通りだとおもいます。
ただし、今回は実用性を無視、命題通りに作成しますた。
'{}'にしたのも、ローカル変数宣言をするため。もちろん変数のスコープを考えたら
何ら使い道はありませんね。でも、これはそれていいんですないですか?

79 :05/02/14
この板の限りだと、プログラマーってやつは酷く劣等感のある人種なんだ。
マイナー言語を使えるからといって、別に偉いわけじゃないんだよ。
わかる?

80 :05/02/20
次のプログラムは配列tenの内容をポインタpによって参照し、入出力するプログラムである。次の空欄を埋めよ。ってゆう問題なんですけど@〜Cまでの空欄解いてもらえないでしょうか?
#include<studio.h>
main()
{
int i,ten[10]
int @p
A
   for(i = 0;i < 10;i++){
printf("整数を入力>>");
scanf("%d",B);
}
for(i = 0;i < 10;i++){
printf("%d個目 = %d\n",i+1,C);
   }
}


81 :05/02/20
@*
Ap = ten;
Bp+i
C*p++

82 :05/02/20
Cは間違いだな、ここは自分でやれや

83 :05/02/22
Z=cos(√(xx+yy))の計算式てどうしたらよい?
    ↑ルートX二乗足すY二乗

84 :05/02/23
math.hを#includeして
Z = cos(sqrt(pow((double)x, 2.0) + pow((double)y, 2.0)));
てな具合かな。
ただしcos()の引数はラジアンだよ。

85 :05/03/25
配列を型に入れたいんですけど、どうにも分かりません。
int1 DATA[8];
DATA[0] = 1;(MSB)
DATA[1] = 0;
DATA[2] = 1;
DATA[3] = 0;
DATA[4] = 1;
DATA[5] = 0;
DATA[6] = 1;
DATA[7] = 0;(LSB)

int8 INPUT_DATA;
にまとめるように入れたいんです。
できますか?。

86 :05/03/26
ひらがなのソートはどうやるんですか?

87 :05/03/26
>>85
int1ってなんですか
int8ってなんですか

88 :05/03/26
>>85
/**
* aのbビット目をcに置き換えたものを出力。cは1もしくは0。
* 関数のオーバヘッドが気になるならマクロとして定義してもよい。
*/
int subbit (int a, int b, int c) {
return a | (c << b);
}
int main () {
int data = 0; /** 変数の頭に大文字を使うべきではない */
data = subbit (data, 0, 0x1);
data = subbit (data, 1, 0x0);
data = subbit (data, 2, 0x1);
data = subbit (data, 3, 0x0);
data = subbit (data, 4, 0x1);
data = subbit (data, 5, 0x0);
data = subbit (data, 6, 0x1);
data = subbit (data, 7, 0x0);
return 0;
}

89 :05/03/26
>>86
あいうえお順にどちらが前か後ろかというのを比較する関数を定義してソートすれば良い。

90 :05/03/26
>>89
ありがとうございます!やっぱり1つずつ全部ですか。
他の方法はないですか?

91 :05/03/26
>>90
ひとつずつやらずにどうするの?
標準関数にはソートの関数がないから、自分で作るしかないぞ。

92 :05/03/26
>>88
おお、すごい!。思ったよりも難しいですね。
聞かなかったら一生分からなかったかも・・。
これから実験してみます。有り難うございました。

93 :05/03/26
>>92
ところで、君のレス番は85だったのだけど、例のビット列はその数字にあわせたの?

94 :05/04/18
漠然とした質問ですいません。
私は3次元の画像処理を行いたいのですが、Cで3次元はどのように展開していけばよいのでしょうか?
2次元でしかしたことがなくて、聞く人もいなくて困っています。
よろしくお願いします

95 :05/04/18
本当に三次元で処理しなければならない問題なのかどうかを考えて。
三次元で処理するとデータ量が膨大になるので普通はなるべく二次元に落として考える。
もしどうしようもなかったらボクセルで考える。

96 :05/04/22

#include <stdio.h>
#include <stdlib.h>
void copy(char *optr, char *iptr,int keta) {
int i;
for (i = 0; i < keta ; ++i) {
*optr ++ = *iptr ++ ;
}
}
main()
{
int i;
int keta;
int y;
char buf1[256];
char buf2[256];
char obuf[256];
while(1){
printf ("文字列の挿入。\n改行のみの入力で終了します。\n");
printf ("文字列を入力して下さい。= \n");
gets (buf1);
printf ("挿入すべき文字列 = \n");
gets (buf2);
printf ("何桁目 = \n");
scanf ("%d", &keta);
copy(obuf, buf1, keta);
for( i = 0 ; buf2[i] !=NULL ; ++i);
copy (obuf + keta, buf2, i);
for( y = 0 ; buf1[y] != NULL ; ++y);
copy (obuf + keta + i, buf1+ keta, y);
printf ("結果=%s\n",obuf);
printf ("\n");
if (buf1[0] == NULL)
exit (0);
}
}

97 :05/04/22
96のプログラムなんですが。
キーボードから文字列を読み込み、指定された桁数の後に別途指定した文字列を挿入して表示する。
繰り返し処理を可能にし、改行のみで処理を終了する。というCプログラム組んでるんですが
一回目はちゃんと入力できるのに二度目からうまく動作しません。
二回目以降、buf1に\0が入っているために入力を受け付けない状況になっているらしいのですが、
どなたか修正案ありませんか?

98 :05/04/22
scanf は使ってはいけない。

99 :05/04/22
ま、それもかわいそうだから
scanf("%d%*[^\n]%*c",&keta);
な感じでどうよ?

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
使いやすいエディタって何よ? in難民板 (227)
みんなで支えあって初級シスアドに合格しよう。 (502)
漫画喫茶、インターネットカフェ (271)
デスクトップ→ノート→○○○○ (145)
普通間違って鯖消さないよな (495)
一文字だけで会話するスレッド (608)
--log9.info------------------
日本で歴代最高のドリブラーといえば誰? 2 (193)
【仮説】ザックはウズベキスタンにわざと負けた (157)
【日本の】小野伸二待望論その9【至宝】 (392)
なでしこジャパン佐々木監督 (725)
オシム待望論 12 (229)
アメリカ代表女子のGKが美人過ぎた件 (347)
長谷部は稲本を超えたのか? (536)
大竹さんの化粧が濃すぎる件 (223)
ウズベキスタン戦反省会 (139)
香川は不細工だから活躍してもまったく無意味www (297)
藤     本     淳      吾 (244)
澤に色気を感じるかどうか (254)
澤>>>>>>>>>男子フル代表 (387)
澤は神、そして永里はゴミ (481)
柏木陽介みたいなチャラ男は代表にはいらない (317)
遠藤の後継者を真剣に考えるスレ (687)
--log55.com------------------
韓国人、台風19号の被害に狂喜乱舞!「自業自得。永遠に災害が続き天罰を受ける民族だ」
【速報】利根川氾濫の恐れ、今になって水位上昇が止まらない
八ッ場ダムが利根川の氾濫を防止していたことが判明 このダム、民主党が確か…
金美齢「台風で命の危険に晒される人は危機管理がない証拠。税金で助ける必要あるのでしょうか」
【悲報】 日本共産党「なぜ水害が発生するとわかっていながら、ダムに水を溜め込むのか!許せない!」
世界最強アメリカ第7艦隊が横須賀から逃げ出したとの噂。海上自衛隊艦艇も続々出港
【反省会】「史上最強」台風20号とは何だったのか
【いのちに優劣付けるのか!?】台東区がホームレスの人の台風避難所受け入れ拒否、社会問題へ