[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/10 00:45 / Filesize : 237 KB / Number-of Response : 985
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C言語なら俺に聞け(入門篇) Part 23



1 名前:デフォルトの名無しさん mailto:sage [2007/12/22(土) 12:49:22 ]
C言語の入門者向け解説スレです。
・C++言語はスレ違いです。
・分からない事をなるべく詳しく書いて下さい。
・ソースコードを晒すと答えやすくなるかもしれません。
・質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。

前スレ
C言語なら俺に聞け(入門篇) Part 22
pc11.2ch.net/test/read.cgi/tech/1196489491/

教えて欲しいのではなく丸投げしたいならこちらへ
C/C++の宿題を片付けます 101
pc11.2ch.net/test/read.cgi/tech/1197132472/

237 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 08:38:22 ]
>>210

 main()

これでCマガジンに連載できるなんて…。・゚・(ノД`)・゚・。
休刊もやんぬるかな。



238 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 09:29:02 ]
>>237
省略した場合はintって決まりなかった?
だから一応正しいんじゃない?

239 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 09:31:09 ]
>>234
scanfの戻り値を利用する
scanfはスキャンに成功した数を返すから、
今回のケースで文字を入力されたら0が返る

240 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 09:35:56 ]
>>232
>scanf("%d", &date[i]);

241 名前:デフォルトの名無しさん [2007/12/27(木) 09:43:47 ]
途中でエンター押しちゃったw
>>232
>scanf("%d", &date[i]);
こういう取り方は文字/数字チェックそのものに意味が無いのでやめ

普通はバッファの文字列変数を用意させて、そこに入力させる。
それをisdigit()に通してクリアしたら、その時点でdate[i]に代入するようにすればいい。


242 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 11:13:33 ]
たぁすけてぇぇぇ!
結果がへんになる!!!

#include<stdio.h>
int main (void)
{
int a,c;
float b,d;
b=1,d=1;
scanf("%d",c);

for(a=1;a<=1000;a++){
b=b+d;
if(b*b==c){
break;
}
if(b*b<=c)
d=d*0.1;
}
printf(" %d の平方根は= %f ",c,b);
return 0;
}

243 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 11:21:53 ]
>scanf("%d",c);

244 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 11:27:04 ]
真に申し訳ございません。どうゆうこと?

245 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 11:30:23 ]
あああああああああああああああ
すいませんすいませんすいません!
もうしませんもうしませんもうしません!



246 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 14:22:54 ]
辞書検索の2分探索を下みたいに書いたんですけど、
????のところ(該当しなかった場合)が思いつきません。
助けてくださいです…

char a[20];
char b[20];
int hi,lo,i;



hi=i;
i=i/2;
lo=0;
while(1){
if(strcmp(b,a) < 0){
hi=i;
i=i-(hi-lo)/2;
}else if(strcmp(b,a) > 0){
lo=i;
i=i+(hi-lo)/2;
}else if(strcmp(b,a) == 0){
printf("あった");
break;
}else if( ???? ){
printf("そんなものなかった");
break;
}
}


247 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 14:30:21 ]
>>246
そこは if (lo > hi) を入れたいんだと思うが、
突っ込みどころが多すぎるからもうちょっと練り直して来い。

248 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 14:34:43 ]
せっかくなので1つ突っ込んでくだしあ

249 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 14:45:05 ]
if文の比較で最初の3通りのどれかに必ず含まれるから最後のelseは
絶対通過しない、まあelse外せばいいけど。
で、1ループでstrcmpは1回呼べばいいべ。
あと文字列が終わったのをチェックしないとね。
略の部分を略さないでテスト用に値設定したやつさらしてみてね。

250 名前:246と248 mailto:sage [2007/12/27(木) 14:55:46 ]
あ、ほんとだ。
ちょとまってください。

251 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 15:10:06 ]
#include <stdio.h>
int main(){
int i,j;

for(i=1;i<=9;++i)
printf("%2d ",i);
printf("\n--------------------------\n");

for(i=1;i<=9;++i){
for(j=1;j<=9;++j)
printf("%2d ",i*j);
printf("\n");
}

return 0;


for文の練習で書いた上の九九を表示するプログラムをwhile文だけで書けないかなぁと思って

252 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 15:10:38 ]
>>251の続き

#include <stdio.h>
int main(){
int i=1;

while(i<=9){
printf("%2d ",i);
i++;
}
printf("\n--------------------------\n");

i=1;
int j=1;
while(i<=9){
while(j<=9){
printf("%2d ",i*j);
j++;
}
printf("\n");
i++;
}

return 0;
}


このように書いてみたのですが1の段以降改行だけでプログラムが終了してしまいます
どうやったら上手く動かせるでしょうか

253 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 15:13:52 ]
>>252
jの値がどういう風に変化するか追ってみよう。


254 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 15:13:58 ]
>>252
while (j<=9) のループ抜けたらj を1に戻さないと。

255 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 15:20:50 ]
あーjが9のままだから次以降のループはスキップされちゃうのか
ヒントありがとうございました



256 名前:246他 mailto:sage [2007/12/27(木) 15:54:11 ]
せっかくレスくれたのに放置ですみません。
またあとで伺いにきます。

かしこ

257 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 16:38:48 ]
大学が決まって4月がで暇なのでC言語を勉強しようと思っているのですが

苦しんで覚えるC言語
ttp://homepage3.nifty.com/mmgames/c_guide/
というサイトを見つけたのですがこのサイトはどうでしょうか?

初心者にいいサイトや本を教えてください

258 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 16:56:00 ]
それでいいよ

259 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 17:31:45 ]
>>257
おk

260 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 17:37:17 ]
いいのかよw

261 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 18:13:44 ]
>>257
そのサイトはダメ出しされているよ。

262 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 18:33:23 ]
ダメ出しすれば著者を超えた気分になれるよね

263 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 18:40:27 ]
あんたは小石を跨いでも小石を超えた気分になれるのか?

264 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 18:54:03 ]
aho

265 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 18:57:48 ]
>>257
そのサイトで勉強すると、>19や>205みたいなことを書くようなお馬鹿になっちゃうよ。



266 名前:デフォルトの名無しさん [2007/12/27(木) 19:03:50 ]
>>257
参考になるけど、やっぱり本がいいよ。
独習Cとか、やさしいCね。

267 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 19:04:05 ]
どうなろうと後で矯正するからいいよ。

268 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 19:05:44 ]
まあ初心者はどのサイトから始めてもいいと思うけど、
そこに留まらずいくつかのサイトを回った方がいいよ
そして宿題スレで宿題を解く
ついでに簡単なデータ構造、アルゴリズムも学ぶ
こんな感じで基礎はおk

269 名前:デフォルトの名無しさん [2007/12/27(木) 19:09:25 ]
他のサイトを見るたびに、こんなやり方があったのか!
ってなって悲しくなるぞ。

270 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 19:37:32 ]
他のサイトを見るたびに、こんなやり方があったのか!
ってなって嬉しくなるぞ.

271 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 19:50:21 ]
特定のサイトにいついたことはないなあ
適当に検索して、
その日見つけたサイトをぱらぱらと読む
サイト規模にもよるけど1日ありゃ十二分に読み終われるとこばっかだし

272 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 20:08:52 ]
おれのお勧め、更新は止まってるけど・・・
mikata.curiocube.com/index.php

273 名前:デフォルトの名無しさん [2007/12/27(木) 20:10:38 ]
WisdumSoftでC言語の基礎文法を覚えて
(例文の内容にアニメ好きがかもしだされているが)
Programing Placeでデータ構造とかその他の
知識を学ぶ。
で理解できない所(ポインタとかかな)を重点的に
載せてる本でさらに学ぶ。
あとは、経験値をつけていくだけだ。

274 名前:273 [2007/12/27(木) 20:11:47 ]
間違えたWisdomSoftだ

275 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:02:21 ]
変数宣言と代入ってつなげられるんですか?



276 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:05:44 ]
>>275
いいえ、それは初期化です

277 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:10:49 ]
苦しんでわけわかめ
違うサイトで勉強するわ
お勧め教えてくだしあ

278 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:17:21 ]

猫でも解るって、ぶっちゃけどう?

携帯からサーセソw

279 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:21:20 ]
>>275
int i;
i = 0;
を指してるなら可能だし
int i=0;
なら>>276の言うとおり「初期化」という。

280 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:33:14 ]
初期化と代入はどう違うんですか?

281 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:36:05 ]
初期値を指定するのが初期化。

初期化と代入ではできることが違う場合がある。
配列は一気に全要素を初期化できるけど、
一気に全要素に代入することはできず、
1要素ずつしか代入できない、とか。

282 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:36:06 ]
const int x;
x = 1; //Error
//代入できNEeeee!!!

const int x = 1; //OK
//Yeah! 初期化最高!!

283 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:36:51 ]
>>280
ぜんぜん違う。初期化される前の値が何であるかは神のみぞ知る。

284 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:39:47 ]
以下の二つのコードで、
仮に最適化されないとするなら、
生成される機械語コードは同じですか?
それとも違う?

(1)
int array[2] = {1,2};

(2)
int array[2];
array[0] = 1;
array[1] = 2;

285 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:40:47 ]
コンパイラ次第



286 名前:284 mailto:sage [2007/12/27(木) 21:41:47 ]
すいません、ちょっと質問が悪いかも

初期化と代入は内部的に全く異なる処理をやっているんですか?
それともただ確保後に代入してるだけですか?内部的に。

287 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:43:53 ]
コンパイラ次第

288 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:44:59 ]
手元の環境で機械語コード生成してみればいいじゃん

289 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 21:48:46 ]
rep movsd 使って初期化してるかもしれないし、
mov で初期化してるかもしれないし。
そのあたりはコンパイラ次第としか言いようが無い。

290 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 22:22:17 ]
>>284
多分,全然違うコードになってる。

291 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 22:42:54 ]
>>284
>仮に最適化されないとするなら、
これが殆ど意味がないのでなんとも言えない。

292 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 23:45:59 ]
ってかマシン語レベルでの差なんて最適化どうこう言う前にコードが変われば変わる可能性はある。
空行(セミコロンのみの行)に対してNOPを吐くか消されるかだってコンパイラしだい。
予想でいいのならいくらでも応えられるけどな。

>>284のコードなら最適化関係なく同じコードが吐かれるかもね。

293 名前:デフォルトの名無しさん [2007/12/27(木) 23:55:28 ]
そんな事、気にしてたら禿げるぞ

294 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 23:58:41 ]
これ以上禿げたら腋毛が無くなる
びっくりするほどなくなる

295 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 00:17:48 ]
機械語レベルを気にする必要があるくらい禿てたら手段くらい知ってるだろ



296 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 01:40:46 ]
代入と初期化の違いは配列やれば判るよ
配列の初期化はOKだけど配列全体の代入はNG
なんでえ〜?ってのはポインタやると判る

297 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 02:13:30 ]
Java厨です。

プロトタイプ宣言ってなんですか?
C言語ってなんで関数を使う前に宣言しとく必要があるんですか?
昔ながらの慣習みたいなものですか?
宣言無くてもコンパイル通るなら、
コンパイラの手抜きと違うんですか?
関数宣言がないときと宣言も定義もないときと
ちゃんとコンパイラは違うエラー出しますよね?

298 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 02:26:15 ]
適度に手抜きしてくれないとコンパイルに時間がかかってしょうがないじゃないか

299 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 02:41:53 ]
分割コンパイルしないなら無くても良いんじゃない?

300 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 02:49:42 ]
C始めて3日くらいです
fopenとfcloseの使い方がようやく分かって、ポインタについては良くわかりません(変数の代わりなのかな?くらい
そこであるテキストファイルを開いて、その中にある文字列(英数字)からある文字列(setofなど)を探したいです
最終的にはある文字列が見つかる→その後ろ〜〜バイト(もしくは〜〜行)をコピーして、別のファイルにペースト というところまでやりたいのですが
検索しようとしている時点で詰まっています。ソースコードは以下です

#include <stdio.h>
#include <conio.h>
#include <string.h>
#define BUFFER_SIZE 200

main(){
       char buffer[BUFFER_SIZE],name[BUFFER_SIZE];
     FILE *fp;
      printf_s("test.txtを開こうとしました\n\n\n\n");
fp = fopen("test.txt", "r");
printf_s("検索文字列を代入してください\n");
scanf_s("%s",&name);
printf_s("%sを検索しています\n",name);
if ( !fp ){
printf("ファイルオープンエラー\n");
return 0;
}

while( fgets(buffer, BUFFER_SIZE, fp) ){
if(!strcmp(name,buffer)){
printf_s("%sが見つかりました!\n",name);
break;
}
}
fclose(fp);
}

301 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 02:54:03 ]
以上のソースに対して、テキストファイルを用意します
『aaxaa        ←改行
bbxb         ←改行
cxc【EOF】』
すると、cxcを入力しても反応してくれず、strcmpのところでcxc\nに変更すると、ifの見つかりました文が出ます
コレに対する問題点としては
1.改行まできっちり一致しなければ見つからないことになる
2.bbxbで完全一致であるが、bxbでも部分一致で見つかったことにしたい
  しかし、今では1行読み込みのために不可能(BUFFER_SIZEを実数にしても無理)

というところです
〜〜の関数使ったほうがいいよ、とか、こういうルーチンで考えるとできるよ、っていうのがあればお願いします
わかりにくい質問で申し訳ありませんが、宜しくお願いします

302 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 02:55:05 ]
>>300-301
strstr()

303 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 03:02:33 ]
>>302
ありがとうございます。今色々なページを見てきたのですが…
返り値としてポインタとして返すんですね。ポインタと見た瞬間に顔が引きつったのですが…

void TestStrStr(void)
{
char *s1 = "abcdef";
char *s2 = "de";
char *cp;
cp = StrStr(s1, s2);
printf("'%s'の中に現れる'%s'という文字列は%d文字目にある.\n", s1, s2, cp - s1 + 1);
}

このようなソースを見つけました。printfの一番後ろにあるcp-s1+1はおそらく何文字目にあるか指定してくれてるようなのですが
ポインタ同士を引き算しているこのような場合、実数として計算をしているのでしょうか?


304 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 03:13:28 ]
>>303
メモリアドレスを計算している。s1が100番地に格納されているとすると、メモリ上は
100 101 102 103 104 105 106 (メモリアドレス)
  a    b    c    d    e    f     \0
のようなイメージ。

strstr()は、見つかった部分のポインタを返すから、"de"を見つけたならアドレス103を返し、それをcpに代入している。
printf()の最後の引数はcp - s1 + 1、つまり103 - 100 + 1で4を返す。

305 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 03:23:02 ]
>>304
なるほど。だからポインタは便利だって言われてるんですね…メモリ上の一番基礎になる数字を返すから…
ありがとうございます
もうちょっとポインタのこと勉強してからやってみます。とりあえず今日は寝ます
ありがとうございました



306 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 03:26:31 ]
>>305
すまん、ちゃんと質問読んでなかったw

ポインタは「アドレスという数字」を格納する変数。
アドレスと聞くと拒否反応が出るかもしれないが、メモリ上の位置を表す何の変哲も無いただの数字。
ただし、四則演算のうち可能なのは加算減算だけで乗除は出来ない。やっても意味のある数字が得られないから。
正しくはインクリメント、デクリメントだけど、これについての詳細はググってくれ。

307 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 04:18:50 ]
ポインタやる時はメモリマップ作って見ると良いよ
スタック、データ、コードのそれぞれのセグメントがどんな配置か判っているとポインタの理解が早くなる

308 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 07:55:49 ]
>>306
ちょっとだけ語弊がありそうなので補足。

・ポインタ+整数 → n 要素だけすすめたポインタを算出
・ポインタ−整数 → n 要素前のポインタを算出

これは可能。ただし配列とか malloc で用意してある範囲を逸脱しないように注意。

・ポインタ−ポインタ → 2つの要素の差を整数で算出

なんだけど、この場合2つのポインタは同じ範囲を指すもの
(304みたいに同じ文字列内の違う位置を指すように)
でないといけないから注意。

309 名前:デフォルトの名無しさん [2007/12/28(金) 08:31:18 ]
アドレスは「符号なし整数には似ているけど、全く違う種類のデータ」だと考えた方がいい。
整数なら四則演算が定義できるが、アドレスの場合は>>308の言う通り。

そしてインクレメント/デクレメントなんかは「アドレスと整数の混合演算」だと思えばいい。

C言語ではデータの種類によって専用の型を用意するから、整数はintやlong、アドレスは
ポインタを使うと思っておけばいい。

310 名前:Google先生 mailto:sage [2007/12/28(金) 10:17:12 ]
インクレメント に一致する日本語のページ 約 1,940 件中 1 - 10 件目 (0.20 秒)

もしかして: インクリメント

311 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 11:01:26 ]
インクリメント デクリメント の検索結果 約 20,700 件中 1 - 10 件目 (0.05 秒)
www.google.co.jp/search?hl=ja&q=%E3%82%A4%E3%83%B3%E3%82%AF%E3%83%AA%E3%83%A1%E3%83%B3%E3%83%88%E3%80%80%E3%83%87%E3%82%AF%E3%83%AA%E3%83%A1%E3%83%B3%E3%83%88

インクレメント デクレメント の検索結果 約 544 件中 1 - 10 件目 (0.34 秒)
www.google.co.jp/search?hl=ja&q=%E3%82%A4%E3%83%B3%E3%82%AF%E3%83%AC%E3%83%A1%E3%83%B3%E3%83%88%E3%80%80%E3%83%87%E3%82%AF%E3%83%AC%E3%83%A1%E3%83%B3%E3%83%88

検索結果を見ると、インクレメント/デクレメントと読む人もいるようだ。

312 名前:デフォルトの名無しさん [2007/12/28(金) 12:52:57 ]
まったく…
K&Rに何と書いてあるか読んでから出直して来い。

313 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 14:10:56 ]
英語で書いてあるな

314 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 20:14:54 ]
英語のカタカナ表記を議論することほど無意味なものはない。
ただ、そのあたりを議論したくてしょうがない馬鹿よけ対策として、
市民権のある表現を使うに越したことはない。

315 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 20:26:25 ]
D→デー
T→テー

と発音するベテラン技術者に食って掛かる新米社員を思い出したw



316 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 22:39:56 ]
>>299
相互再帰する必要がある時はないと困る。

317 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 22:42:44 ]
>C言語(シー言語)は、1972年にAT&Tベル研究所のデニス・リッチー (Dennis M. Ritchie) が主体となって作ったプログラミング言語である。

1972当時のマシンでJava並みのコンパイラやアプリなんて起動すらしねぇw

318 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 22:48:55 ]
おまえは何を

319 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 16:41:33 ]
テキストエディタ(メモ帳)で、ソースファイルを作ったのですが、
どこのファイルに保存すればいいのか、全く分かりません
どなたか宜しくお願いします

320 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 16:43:14 ]
自分で決めた場所に自分でフォルダ作って保存しとけ

321 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 16:44:42 ]
               .|  
               .|  
    ∩___∩    |  
    | ノ\   ,_ ヽ  .|  
   /  ●゛  ● |   .J  
   | ∪  ( _●_) ミ 
  彡、   |∪|   |     
 /     ∩ノ ⊃  ヽ
 (  \ / _ノ |  |
  \  "  /  | |
   \ / ̄ ̄ ̄ /
      ̄ ̄ ̄ ̄

322 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 16:44:53 ]
マイドキュメントとかに置くとスペースがどーたらではまるから
c:\homeとかc:\srcとかってディレクトリを作ってそこに置け。
コマンドプロンプトを起動したら
cd /d c:\home
と打ってそこに移動してコンパイルしろ。

323 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 16:58:31 ]
なんか、自分の手違いがあるらしく、「:や¥は、ファイル名には使えません」
と出てしまいます・・・  
どういうことなのでしょうか・・

324 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:00:48 ]
プログラム以前の問題。
Windows のことをもうちょっと勉強しる。

325 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:01:43 ]
:や¥はファイル名に使えるがなんて冗談は置いといて

>>322のはディレクトリ(フォルダ)名



326 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:08:10 ]
Windowsキー+Rでcmdを起動
以下を入力
mkdir c:\home
cd /d c:\home
explorer /n,/e,c:\home
notepad hello.c
gcc hello.c && a.exe

327 名前:デフォルトの名無しさん [2007/12/29(土) 17:11:14 ]
beginthreadexに複数の値を渡すコードがわからないのですが、
教えて下さい。

328 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:12:12 ]
>>327
msdn.microsoft.com/library/ja/default.asp?url=/library/ja/vclib/html/_crt__beginthread.2c_._beginthreadex.asp

329 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:41:23 ]
何日くらいでマスターできますか?

330 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:44:59 ]
>>329
何を?C?
あんたの今のCの習熟度、他言語について、PCに関する一般知識がどの程度のものか

331 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:48:06 ]
>>330
Cですね
今日はじめた。他言語まったくしらない。PC知識まぁまぁ。

332 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:49:42 ]
1000日くらいがんばれ

333 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:50:13 ]
どの程度を「マスター」と言うのか分からんが、
一通りどんな感じなのか知るのに2ヶ月、
それなりに使えだすのに半年、
十分使えるまでには1〜2年くらいじゃね。

334 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:52:24 ]
がんばるよ

335 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 17:59:35 ]
C言語の「マスター」と言うと、
・ANSI前(K&R?)の仕様とC89、C99の規格に精通している
・代表的なコンパイラのオプションと処理系定義の仕様が概ね分かる
・上記コンパイラの最適化の仕様がある程度分かる(要アセンブラ?)
代表的なコンパイラ:gcc、VC、BCCぐらい?組込みだとその他もか

辺りだと思うんだがどーか。



336 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 18:00:37 ]
Linuxカーネルをビルドできたらスーパーハカーです

337 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 18:04:53 ]
>>335
実務的な知識がなさすぎるだろう






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<237KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef