!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/
■コードを貼る場合はこちら
http://ideone.com/
■前スレ
C#, C♯, C#相談室 Part94
https://mevius.5ch.net/test/read.cgi/tech/1553075856/
■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C#, C♯, C#相談室 Part96
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん (ワッチョイ 7633-kUv4)
2021/12/20(月) 11:03:25.88ID:sdn/+VfW0896デフォルトの名無しさん (アウアウウー Sa6b-Fzhe)
2022/12/14(水) 11:37:43.63ID:RHCcNLTna 文字数増えて何の問題がある?
全部mainに突っ込むのを効率化と思ってるやつもいるがそんなもの計算量の少ないアルゴリズムを選んだら軽く吹っ飛ぶぞ
全部mainに突っ込むのを効率化と思ってるやつもいるがそんなもの計算量の少ないアルゴリズムを選んだら軽く吹っ飛ぶぞ
897デフォルトの名無しさん (アウアウウー Sa6b-tIJK)
2022/12/14(水) 11:40:38.40ID:/uk0szJ+a898デフォルトの名無しさん (ワッチョイ 7fbb-dmwH)
2022/12/14(水) 11:40:54.35ID:EUJoHYXL0 ゴルフでゆーしょーできねーじゃん
899.NET MAUI HighSchool (ワッチョイ ff01-1zqz)
2022/12/14(水) 12:28:52.47ID:giMMsIqE0 ReactiveXでFizzBuzz作りたい
3が流れてきたらFizzって言うsubscribeと5が流れてきたらBuzzっていうsubscribeと15が流れてきたらFizzBuzzっていうsubscribeをつくって1から100に順に上がっていくオブザーバブルプロパティを作って発行し合う
3が流れてきたらFizzって言うsubscribeと5が流れてきたらBuzzっていうsubscribeと15が流れてきたらFizzBuzzっていうsubscribeをつくって1から100に順に上がっていくオブザーバブルプロパティを作って発行し合う
900.NET MAUI HighSchool (ワッチョイ ff01-1zqz)
2022/12/14(水) 12:33:05.46ID:giMMsIqE0 >>891
テキトーすぎて話にならなさそう
テキトーすぎて話にならなさそう
901デフォルトの名無しさん (ワッチョイ 47a7-3TNT)
2022/12/14(水) 13:34:00.90ID:c/UXUhCI0902デフォルトの名無しさん (ワッチョイ bfcb-d2tu)
2022/12/14(水) 17:31:15.61ID:R3/45qGH0 >>897
ユニットテストとは、全部関数化するということですか?
ユニットテストとは、全部関数化するということですか?
903.NET MAUI HighSchool (ワッチョイ df01-1zqz)
2022/12/16(金) 16:23:50.13ID:3qj0lL1U0 たけのこなんとかってYou Tubeチャンネル再生数少ないけどかなりためになるよな
https://youtube.com/@user-el9do7sq8l
https://youtube.com/@user-el9do7sq8l
904デフォルトの名無しさん (アウアウクー MMf3-hy4/)
2022/12/18(日) 02:41:11.08ID:bGOfc0DhM アマゾン見たらmaui本が1月14日発売だけど、年末出版には間に合わんかったんか?年明けは勉強時間取れる人少ないと思うが。
905デフォルトの名無しさん (ワッチョイ 1f02-O3WS)
2022/12/18(日) 04:18:00.82ID:v5fQ3NDq0 学生の春休みや新学期には合うだろ
906.NET MAUI HighSchool (ワッチョイ 6a01-IBS7)
2022/12/18(日) 07:57:38.13ID:kMWioX0P0 >>904
別によくね?
増田さんにはお世話になってる
https://booklog.jp/author/%E5%A2%97%E7%94%B0%E6%99%BA%E6%98%8E?page=1
C#やVBなどの.NET系以外にもRustとかも書いておられる
別によくね?
増田さんにはお世話になってる
https://booklog.jp/author/%E5%A2%97%E7%94%B0%E6%99%BA%E6%98%8E?page=1
C#やVBなどの.NET系以外にもRustとかも書いておられる
907デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/18(日) 09:09:30.57ID:ses1WoSTM mauiに興味を持てるのはごく一部の異端者だけだからどちらでもいいだろ
908デフォルトの名無しさん (ワッチョイ a301-laf+)
2022/12/18(日) 11:48:14.16ID:HNplfub60 WinFormsにだけ注力してりゃいいのにバカなMicrosoft
909デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/18(日) 11:56:08.49ID:ses1WoSTM それはないけど同じところをずっと行ったり来たりしてるね
10年ぐらい停滞しっぱなし
net frameworkを.net coreに書き直し
winforms WPFを.net core用に書き直し
対応するためにVSを書き直し
reunionしてUWPのAPIを使うために書き直し
xamarinをMAUIにして書き直し
今後monoも置き換えするんだろうけど結局停滞してるだけでとてつもない開発リソースを浪費してる
10年ぐらい停滞しっぱなし
net frameworkを.net coreに書き直し
winforms WPFを.net core用に書き直し
対応するためにVSを書き直し
reunionしてUWPのAPIを使うために書き直し
xamarinをMAUIにして書き直し
今後monoも置き換えするんだろうけど結局停滞してるだけでとてつもない開発リソースを浪費してる
910デフォルトの名無しさん (ワッチョイ 535f-f2OJ)
2022/12/18(日) 12:21:58.82ID:unD+40ms0 停滞してるか?
めちゃくちゃ便利になってるんだが…。
めちゃくちゃ便利になってるんだが…。
911デフォルトの名無しさん (アウアウウー Sa9f-840Q)
2022/12/18(日) 12:46:03.27ID:lQqYZof8a 停滞してるのはエコシステムではなく勉強してない自分達だったというオチはこの業界ではよくある話
身近なC#ディスりおじさんに詳しく話を聞いたらC# 1.0〜2.0ぐらいの知識で止まってたなんてことがよくあった
まあこれに関してはJava 7の印象でいまだにJavaが大嫌いな自分にも当てはまるんであまり言えんけど
身近なC#ディスりおじさんに詳しく話を聞いたらC# 1.0〜2.0ぐらいの知識で止まってたなんてことがよくあった
まあこれに関してはJava 7の印象でいまだにJavaが大嫌いな自分にも当てはまるんであまり言えんけど
912デフォルトの名無しさん (ワッチョイ 1f02-JDfe)
2022/12/18(日) 13:03:09.27ID:LK87z1ML0 便利になったのはWPFまでだな
それ以降のUIが迷走を続けている
MAUIはあの完成度でよくリリースする気になったもんだと思うわ
それ以降のUIが迷走を続けている
MAUIはあの完成度でよくリリースする気になったもんだと思うわ
913デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/18(日) 13:22:30.39ID:ses1WoSTM 迷走だよ
GPSやセンサー類のAPIはUWPにだけ実装とか迷走だろ
それを今統合も出来ずに上位にWinUI3のガワだけかぶせてる
実質WinUI3はWPFの部分をwin32とか使ってc++で置き直してUWPを中に含めてるだけ
GPSやセンサー類のAPIはUWPにだけ実装とか迷走だろ
それを今統合も出来ずに上位にWinUI3のガワだけかぶせてる
実質WinUI3はWPFの部分をwin32とか使ってc++で置き直してUWPを中に含めてるだけ
914デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/18(日) 13:25:35.75ID:ses1WoSTM 非GUI部分のAPIをUWPやwinformsやWPFから切り離せていなかったのが一番の問題
915デフォルトの名無しさん (ワッチョイ 535f-8Cre)
2022/12/18(日) 19:27:49.14ID:Wdso+RO70 そしてその問題をWindows App SDKで解決したと
916デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/18(日) 19:29:23.75ID:ses1WoSTM いや現状変わっていない
917デフォルトの名無しさん (ワッチョイ 535f-8Cre)
2022/12/18(日) 21:10:41.96ID:Wdso+RO70 Why?
918デフォルトの名無しさん (ワッチョイ f3b1-3QHA)
2022/12/18(日) 21:34:00.76ID:cciNjKw00 var rst = src.Select(c =>
if(c == 'a') c = '1';
else if(c == 'b') c = '2';
else {そのまま}
);
とある文字列に対してSelectで条件分岐の操作ってできるんでしょうか?
このような操作はエラー出てしまいます。
for文使う意外でLinqで可能ですか?
if(c == 'a') c = '1';
else if(c == 'b') c = '2';
else {そのまま}
);
とある文字列に対してSelectで条件分岐の操作ってできるんでしょうか?
このような操作はエラー出てしまいます。
for文使う意外でLinqで可能ですか?
919デフォルトの名無しさん (ワッチョイ f3b1-3QHA)
2022/12/18(日) 21:35:09.61ID:cciNjKw00 var rst = src.Select(c => {
if(c == 'a') c = '1';
else if(c == 'b') c = '2';
else {そのまま}
});
if(c == 'a') c = '1';
else if(c == 'b') c = '2';
else {そのまま}
});
920デフォルトの名無しさん (ワッチョイ f376-dmHX)
2022/12/18(日) 21:43:50.09ID:/B6+jV4p0 Selectは、 TResult Func(TSource c); 相当の関数を求めてる。
1文で書けないラムダは{}で囲ってreturnする必要がある。
var rst = src.Select(c => {
if(c == 'a') return '1';
else if(c == 'b') return '2';
else {return c;}
});
条件がそこそこ複雑になるから関数化した方が読みやすくなるけどね
static char func(char c){
if(c == 'a') return '1';
else if(c == 'b') return '2';
else {return c;}
}
var rst = src.Select(func);
1文で書けないラムダは{}で囲ってreturnする必要がある。
var rst = src.Select(c => {
if(c == 'a') return '1';
else if(c == 'b') return '2';
else {return c;}
});
条件がそこそこ複雑になるから関数化した方が読みやすくなるけどね
static char func(char c){
if(c == 'a') return '1';
else if(c == 'b') return '2';
else {return c;}
}
var rst = src.Select(func);
921デフォルトの名無しさん (ワッチョイ a301-laf+)
2022/12/18(日) 23:07:10.29ID:HNplfub60 普通にif文書きゃええやん
922デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/18(日) 23:17:05.27ID:ses1WoSTM お前ら大丈夫か?
落ち着け
とある文字列と書いてあるのを意図的に無視してんのか?
落ち着け
とある文字列と書いてあるのを意図的に無視してんのか?
923デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/18(日) 23:35:46.66ID:ses1WoSTM 追加情報
三項演算子を二回使うと二回分の変換を式で表せる
c++なんかでは多用されるテクニック
実際に使うとなると
string.Replace
三項演算子を二回使うと二回分の変換を式で表せる
c++なんかでは多用されるテクニック
実際に使うとなると
string.Replace
924デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/18(日) 23:58:06.12ID:ses1WoSTM ごめんごめん
すげーまちがえてんな
3項演算子二重で使って3つの値を出せる式になる
それと古のテクニックを使う方法もあるけどもう寝る時間だな…
すげーまちがえてんな
3項演算子二重で使って3つの値を出せる式になる
それと古のテクニックを使う方法もあるけどもう寝る時間だな…
925デフォルトの名無しさん (アウアウウー Sa9f-6ae9)
2022/12/19(月) 10:29:01.95ID:l2DO4th2a お前こそ落ち着けよ...
とある文字列 = src
だろ
とある文字列 = src
だろ
926649 ◆xETmWn3d3U (ワッチョイ f3b1-oovO)
2022/12/19(月) 16:18:50.34ID:Q+XXk/bX0 >>918-924
こんな感じかな?知らんけど
string src = "beef steak";
var rst = src.Select(c => c == 'a' ? '1' : (c == 'b' ? '2' : c));
こんな感じかな?知らんけど
string src = "beef steak";
var rst = src.Select(c => c == 'a' ? '1' : (c == 'b' ? '2' : c));
927デフォルトの名無しさん (ワッチョイ 6a2f-8Cre)
2022/12/19(月) 18:16:46.96ID:wIMiDvp90 つか正規表現で良い気がする
928649 ◆xETmWn3d3U (ワッチョイ f3b1-oovO)
2022/12/19(月) 18:49:15.49ID:Q+XXk/bX0 string rst = src;
rst = rst.Replace('a', '1').Replace('b', '2');
でもええんちゃう?知らんけど
rst = rst.Replace('a', '1').Replace('b', '2');
でもええんちゃう?知らんけど
929デフォルトの名無しさん (ワッチョイ beb9-E2zE)
2022/12/19(月) 19:34:29.68ID:346Jf6ym0 今風に書くなら
var rst = src.Select(c => c switch {
'a' => '1',
'b' => '2',
_ => c,
});
としておきたいかな
var rst = src.Select(c => c switch {
'a' => '1',
'b' => '2',
_ => c,
});
としておきたいかな
930デフォルトの名無しさん (アウアウウー Sa9f-6ae9)
2022/12/19(月) 19:36:05.97ID:l2DO4th2a 多重に三項演算子使うぐらいならswitch式の方がマシじゃね?
var rst = src.Select(c => c switch{ 'a' => '1', 'b' => '2', _ => c });
var rst = src.Select(c => c switch{ 'a' => '1', 'b' => '2', _ => c });
931デフォルトの名無しさん (アウアウウー Sa9f-6ae9)
2022/12/19(月) 19:36:58.87ID:l2DO4th2a あっ、被った...
932デフォルトの名無しさん (アウアウウー Sa9f-3QHA)
2022/12/19(月) 19:45:13.87ID:3uxWIf14a 皆様分かりにくい質問だったのにありがとうございます😭
933デフォルトの名無しさん (アウアウウー Sa9f-3QHA)
2022/12/19(月) 19:47:06.21ID:3uxWIf14a もちろんReplaceでいいんですけどSelectの理解のために知りたかったです
>>920分かりやすかったです。
>>920分かりやすかったです。
934デフォルトの名無しさん (ワッチョイ 9749-QolP)
2022/12/20(火) 09:21:42.04ID:VUWojem40 いえいえ
935デフォルトの名無しさん (アウアウウー Sa9f-bKpv)
2022/12/20(火) 11:21:03.37ID:Z1Fhbyfda 文と式の区別ついてないしelseだけ変なブロックついてるけどなw
936デフォルトの名無しさん (ブーイモ MM17-LnhB)
2022/12/20(火) 12:14:46.46ID:l/hyvVydM 一度に置換する関数ってなかったっけ?
937デフォルトの名無しさん (アウアウウー Sa9f-bKpv)
2022/12/20(火) 13:50:21.06ID:409NV00Ga 正規表現とDictionaryで一度に置換できる
938デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/20(火) 15:26:00.51ID:pH7eiimed MSストアアプリをリリースしてみたいけど難読化できるか気になっている。
中間言語(IL)のコードだと簡単にリバースエンジニアリングされてしまいそうで不安。
ストアアプリは中間言語ではないファイルにストア側で変換されますか?
自分で書くコードはC#です。
あと.NET7だとネイティブでビルドできるらしいけど.NET7で開発すると、
ローカルもストアアプリもネイティブコードで生成されるんでしょうか?
中間言語(IL)のコードだと簡単にリバースエンジニアリングされてしまいそうで不安。
ストアアプリは中間言語ではないファイルにストア側で変換されますか?
自分で書くコードはC#です。
あと.NET7だとネイティブでビルドできるらしいけど.NET7で開発すると、
ローカルもストアアプリもネイティブコードで生成されるんでしょうか?
939デフォルトの名無しさん (アウアウウー Sa9f-bKpv)
2022/12/20(火) 15:40:03.50ID:409NV00Ga 機械語ならできないと思ってるのか
940デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/20(火) 15:44:37.17ID:pH7eiimed >>939
難易度がけた違いでしょう?
機械語からリーバスエンジニアリングできるような人なら
ゼロから自分で書いたほうが速いはず。
ILだとC#初心者でもロジック理解できちゃうしパクリアプリも作られてしまう。
難易度がけた違いでしょう?
機械語からリーバスエンジニアリングできるような人なら
ゼロから自分で書いたほうが速いはず。
ILだとC#初心者でもロジック理解できちゃうしパクリアプリも作られてしまう。
941デフォルトの名無しさん (ワッチョイ db2d-z22/)
2022/12/20(火) 15:54:23.99ID:GGhGhggz0 どうせ完璧な対策は無理だし、ConfuserEXで強めに難読化しておくのじゃ駄目かな
942デフォルトの名無しさん (ワッチョイ aa7c-e5AJ)
2022/12/20(火) 15:59:10.71ID:cyGUI4Ab0 C#のバイナリは中身もMSILだし難読化してもある程度ソースは分かる
ILSpy等で難読化した後のファイルを見てみれば分かるよ
ILSpy等で難読化した後のファイルを見てみれば分かるよ
943デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/20(火) 16:05:38.86ID:k+1oqZ2P0 >>937
どうやってやるの?
どうやってやるの?
944デフォルトの名無しさん (アウアウウー Sa9f-bKpv)
2022/12/20(火) 16:15:34.10ID:409NV00Ga >>940
難易度ならそこまで変わらん
難易度ならそこまで変わらん
945デフォルトの名無しさん (アウアウウー Sa9f-bKpv)
2022/12/20(火) 16:17:27.75ID:409NV00Ga >>943
Regex.Replaceのオーバーロードにラムダ式を取るやつがあるから引数をキーにしてDictionaryから置換先を取り出せばいい
Regex.Replaceのオーバーロードにラムダ式を取るやつがあるから引数をキーにしてDictionaryから置換先を取り出せばいい
946デフォルトの名無しさん (ワッチョイ 0f33-oCck)
2022/12/20(火) 16:42:37.80ID:e6Ld54kx0947デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/20(火) 16:57:50.13ID:k+1oqZ2P0 >>945
なるほど、サンクス
なるほど、サンクス
948デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/20(火) 17:06:16.44ID:pH7eiimed >>942
ストアアプリも読める?読めたらまずくない?
ストアアプリも読める?読めたらまずくない?
949デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/20(火) 17:17:31.72ID:pH7eiimed 半分自己解決。UWPはnative codeになるようだ
非UWPはまだわからん。
.NET nativeのおかげだな。.NET7では全アプリ対応になってるのかも
https://microsoft.github.io/react-native-windows/docs/native-code
UWP apps written in C# or other managed languages submitted to the store must be built using the .NET Native toolchain. This is the default when building C# apps in Release mode, but not in Debug, so apps built in Debug will be rejected by the Store.
非UWPはまだわからん。
.NET nativeのおかげだな。.NET7では全アプリ対応になってるのかも
https://microsoft.github.io/react-native-windows/docs/native-code
UWP apps written in C# or other managed languages submitted to the store must be built using the .NET Native toolchain. This is the default when building C# apps in Release mode, but not in Debug, so apps built in Debug will be rejected by the Store.
950デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/20(火) 17:21:11.68ID:pH7eiimed native codeじゃないと商用アプリリリースする気にならないわ
認証まわりとかコード見られたくない
.NET7でもしWPFとかもnative codeふつうにはけるのなら
c#人気復活する気がする
認証まわりとかコード見られたくない
.NET7でもしWPFとかもnative codeふつうにはけるのなら
c#人気復活する気がする
951デフォルトの名無しさん (ワッチョイ 8be5-974H)
2022/12/20(火) 17:32:16.50ID:yIApGVlC0 盗んだコードで売りに出す♪
952デフォルトの名無しさん (ワッチョイ aa7c-e5AJ)
2022/12/20(火) 17:33:48.40ID:cyGUI4Ab0953デフォルトの名無しさん (ワッチョイ db2d-z22/)
2022/12/20(火) 17:33:58.25ID:GGhGhggz0 >>942
難読化を強い設定にしたらILSpyでファイルを開いただけじゃソースコードは読めないよ
難読化を強い設定にしたらILSpyでファイルを開いただけじゃソースコードは読めないよ
954デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/20(火) 17:37:55.97ID:pH7eiimed >>952
MSのストア側でnativeになるとかじゃない?
MSのストア側でnativeになるとかじゃない?
955たすけて!!!!!1!!11!!1!!!1!!111 (ガックシ 0676-ZR1D)
2022/12/20(火) 19:28:27.61ID:nMZXsv/b6 C言語でボードゲームを作成する課題についてです。重力付き4目並べを最終的にコンピュータと対戦可能にするように、テンプレートのコードに穴埋めしていく課題です。
@横7x縦6の盤面を立てて使用A2人で対戦、以下の0~6のマスを交互に選択B縦横斜めいずれか4コマ並べれば勝ち。以下はテンプレートのコードです(長いので続きはGoogleドライブにも置いてます)、これらの空白部分の穴埋めが分かる方、どうか教えてくださいお願いします。元テンプレコード↓→ https://drive.google.com/file/d/1bTnbssantyf9dEV5DOugZuloiVUh7H3D/view?usp=share_link
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define YMAX 6 // 縦方向のマス目の数
#define XMAX 7 // 横方向のマス目の数
int board[XMAX][YMAX]; // 0:未着手 1:先手のコマ● 2:後手のコマ○
int num[XMAX]; // 各列に置かれているコマの数
int choice = 1; // 0:未選択
// 1:人間(先手●)対人間(後手〇)
// 2:人間(先手●)対コンピュータ(後手〇)
// 3:コンピュータ(先手●)対人間(後手〇)
int turn = 0; // 先手か後手かを判定するための着手数
void InitBoard(void);
void DispBoard(void);
int CheckFull(void);
int SetXpos(int);
int CheckBoard(int, int, int);
int ComputeXpos(int);
int SearchConnect(int, int);
int main(void)
{
int xpos; // 入力したコマの置き場所,またはコンピュータが探したコマの置き場所
int player; // 1:先手の手番 2:後手の手番
int win = 0; // 0:プレイ中 1:先手の勝ち 2:後手の勝ち 3:引き分け
int ans;
while (1)
{
srand((unsigned int)time(NULL)); // 乱数を使う場合のseedの初期化
長いので続きはGoogleドライブにあります→ https://drive.google.com/file/d/1bTnbssantyf9dEV5DOugZuloiVUh7H3D/view?usp=share_link
@横7x縦6の盤面を立てて使用A2人で対戦、以下の0~6のマスを交互に選択B縦横斜めいずれか4コマ並べれば勝ち。以下はテンプレートのコードです(長いので続きはGoogleドライブにも置いてます)、これらの空白部分の穴埋めが分かる方、どうか教えてくださいお願いします。元テンプレコード↓→ https://drive.google.com/file/d/1bTnbssantyf9dEV5DOugZuloiVUh7H3D/view?usp=share_link
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define YMAX 6 // 縦方向のマス目の数
#define XMAX 7 // 横方向のマス目の数
int board[XMAX][YMAX]; // 0:未着手 1:先手のコマ● 2:後手のコマ○
int num[XMAX]; // 各列に置かれているコマの数
int choice = 1; // 0:未選択
// 1:人間(先手●)対人間(後手〇)
// 2:人間(先手●)対コンピュータ(後手〇)
// 3:コンピュータ(先手●)対人間(後手〇)
int turn = 0; // 先手か後手かを判定するための着手数
void InitBoard(void);
void DispBoard(void);
int CheckFull(void);
int SetXpos(int);
int CheckBoard(int, int, int);
int ComputeXpos(int);
int SearchConnect(int, int);
int main(void)
{
int xpos; // 入力したコマの置き場所,またはコンピュータが探したコマの置き場所
int player; // 1:先手の手番 2:後手の手番
int win = 0; // 0:プレイ中 1:先手の勝ち 2:後手の勝ち 3:引き分け
int ans;
while (1)
{
srand((unsigned int)time(NULL)); // 乱数を使う場合のseedの初期化
長いので続きはGoogleドライブにあります→ https://drive.google.com/file/d/1bTnbssantyf9dEV5DOugZuloiVUh7H3D/view?usp=share_link
956デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/20(火) 19:43:57.01ID:pH7eiimed957デフォルトの名無しさん (ワッチョイ 6aad-HqPk)
2022/12/20(火) 19:53:21.19ID:3kdd/MdI0 課題についてですが
958デフォルトの名無しさん (ワッチョイ 535f-f2OJ)
2022/12/20(火) 19:56:57.69ID:oMNiRABq0 パクられるほどのアプリなんだろうか。
今日日、割られるとしたらパッチが広まるのも一瞬なんだから、それよりもちゃんと利用規約書いた方が良いんじゃないの?
はるかに金払うと思うよ。特に企業内ユーザは。
今日日、割られるとしたらパッチが広まるのも一瞬なんだから、それよりもちゃんと利用規約書いた方が良いんじゃないの?
はるかに金払うと思うよ。特に企業内ユーザは。
959デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/20(火) 20:36:05.36ID:pH7eiimed >>958
流行ってきてもすぐにコピーアプリつくられたら
収益激減しちゃうでしょ
利用規約なんて書いても少し変えてコピーアプリつくられたらおしまいだよ
実害がはっきりでる
例えば300円のアプリ、コピーされて100円で売られたらこっちは大損だよ
流行ってきてもすぐにコピーアプリつくられたら
収益激減しちゃうでしょ
利用規約なんて書いても少し変えてコピーアプリつくられたらおしまいだよ
実害がはっきりでる
例えば300円のアプリ、コピーされて100円で売られたらこっちは大損だよ
960デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/20(火) 20:36:09.48ID:k+1oqZ2P0 困るほど割られるならサーバー用意して認証するかな、俺なら
まあそんなアプリを公開できるとも思わんから取らぬたぬきなんだけどw
まあそんなアプリを公開できるとも思わんから取らぬたぬきなんだけどw
961デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/20(火) 20:38:13.57ID:pH7eiimed962デフォルトの名無しさん (スップ Sd8a-ytDT)
2022/12/20(火) 20:43:25.99ID:paaoChG1d クライアントにAPIキーをハードコードしてるのか?ユーザー認証を実装しろよ
そんな初歩的な設計ミスしといてセキュリティもクソも
そんな初歩的な設計ミスしといてセキュリティもクソも
963デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/20(火) 21:05:09.19ID:k+1oqZ2P0 >>961
もしかして認証ってクライアントからサーバーにログインするような奴しか知らんのか?
もしかして認証ってクライアントからサーバーにログインするような奴しか知らんのか?
964デフォルトの名無しさん (スッップ Sd8a-g3+u)
2022/12/20(火) 21:41:02.29ID:y3Va6Z2Ud >>955
馬鹿は死ね
馬鹿は死ね
965デフォルトの名無しさん (ワッチョイ 535f-f2OJ)
2022/12/20(火) 21:55:47.97ID:oMNiRABq0966デフォルトの名無しさん (ワッチョイ 535f-8Cre)
2022/12/21(水) 02:19:07.37ID:XJm7JjIp0 .NET 7のNative AOTは今のところコンソールアプリとクラスライブラリで使えるらしい
今後範囲を広げていく計画だったと思うが
現状でWindowsアプリでも重要な部分だけクラスライブラリにすれば上で求められてることはできそうだな
今後範囲を広げていく計画だったと思うが
現状でWindowsアプリでも重要な部分だけクラスライブラリにすれば上で求められてることはできそうだな
967デフォルトの名無しさん (スッププ Sd8a-ytDT)
2022/12/21(水) 08:11:43.60ID:WvXmOK62d >>966
それはちょっと誤解がある
NativeAOTはコンソールアプリとして発行されるアプリケーション、もしくは(.NETのクラスライブラリではなく)ネイティブの共有ライブラリを作るときだけ使える
つまり、仮にWindowsアプリで部分的に使うならPInvokeが必要
なお、NativeAOTはASP.NET Coreアプリを動かすことをゴールとしており、GUIアプリのサポートは全く計画にない
それはちょっと誤解がある
NativeAOTはコンソールアプリとして発行されるアプリケーション、もしくは(.NETのクラスライブラリではなく)ネイティブの共有ライブラリを作るときだけ使える
つまり、仮にWindowsアプリで部分的に使うならPInvokeが必要
なお、NativeAOTはASP.NET Coreアプリを動かすことをゴールとしており、GUIアプリのサポートは全く計画にない
968デフォルトの名無しさん (ワッチョイ 1f02-JDfe)
2022/12/21(水) 08:21:41.02ID:NS3BAQGq0 ネイティブのDLL作れるのはええな
わざわざその為だけにC++使う必要なくなるかな
わざわざその為だけにC++使う必要なくなるかな
969デフォルトの名無しさん (ワッチョイ c307-bKpv)
2022/12/21(水) 10:09:22.51ID:DxBIri9+0 ソースが見られるのを恐れてるのはパクられるのを恐れてるんじゃなくパクったのがバレるのを恐れてるんだよな
お前なんかの作った物をパクるやつなんかいねーよと言いたくなるやつしか難読化難読化言わない
お前なんかの作った物をパクるやつなんかいねーよと言いたくなるやつしか難読化難読化言わない
970デフォルトの名無しさん (ワッチョイ c307-bKpv)
2022/12/21(水) 10:17:43.01ID:DxBIri9+0 あと.NETのリバースエンジニアリングがしやすいのは静的ライブラリじゃなくDLLを使ってるのと仮想メソッドを多用しているのも大きい
DLLで提供されるクラスを使う時や仮想メソッドを使う時は名前でアクセスせざるを得ないからどのクラスのどのメソッドを使っているかを隠すことができない
これはC++を使っても同じこと
本気で難読化したいなら標準ライブラリを使うのをやめた上でソースコードジェネレータを使ってソースレベルでクラス名や関数名をランダマイズするところから
DLLで提供されるクラスを使う時や仮想メソッドを使う時は名前でアクセスせざるを得ないからどのクラスのどのメソッドを使っているかを隠すことができない
これはC++を使っても同じこと
本気で難読化したいなら標準ライブラリを使うのをやめた上でソースコードジェネレータを使ってソースレベルでクラス名や関数名をランダマイズするところから
971デフォルトの名無しさん (ワッチョイ c307-bKpv)
2022/12/21(水) 10:20:28.49ID:DxBIri9+0 https://mevius.5ch.net/test/read.cgi/tech/1671585518/
立てたけどこれ過去スレの履歴要らんだろ
立てたけどこれ過去スレの履歴要らんだろ
972デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/21(水) 10:50:38.22ID:Q7xHaIEVd >>967
ASP.NET Coreは.NET8でnative AOT対応してくるかもしれない。
Azure運営してるMSとしては欲しい機能だろうし。
GUI appsもゴールにないという事はないと思うよ
やっぱり速度とかメモリ使用とかでnative有利だし。
MAUIで作ったiOSかMacアプリはnative codeでbuildされるとか見た記憶ある。
他社がnativeで動くならGUI appも対応しないとc#開発者がC#使うのをやめてしまう。
ASP.NET Coreは.NET8でnative AOT対応してくるかもしれない。
Azure運営してるMSとしては欲しい機能だろうし。
GUI appsもゴールにないという事はないと思うよ
やっぱり速度とかメモリ使用とかでnative有利だし。
MAUIで作ったiOSかMacアプリはnative codeでbuildされるとか見た記憶ある。
他社がnativeで動くならGUI appも対応しないとc#開発者がC#使うのをやめてしまう。
973デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/21(水) 10:52:45.19ID:Q7xHaIEVd ここみると.NET7の制限というニュアンスで書いてある。
最終的にはふつうのWPFとかもnative AOT目指してるように思える。
https://learn.microsoft.com/en-us/dotnet/core/deploying/native-aot/
最終的にはふつうのWPFとかもnative AOT目指してるように思える。
https://learn.microsoft.com/en-us/dotnet/core/deploying/native-aot/
974デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/21(水) 10:54:27.51ID:Q7xHaIEVd975デフォルトの名無しさん (ワッチョイ c307-bKpv)
2022/12/21(水) 10:59:36.26ID:DxBIri9+0976デフォルトの名無しさん (ワッチョイ 0f2f-8Cre)
2022/12/21(水) 11:21:48.38ID:dQUtHKIl0977デフォルトの名無しさん (アウアウアー Sab6-sLkO)
2022/12/21(水) 11:38:04.02ID:XdVZCz4Ta >>971
それよりVS 2017 からバージョンさせてほしい
それよりVS 2017 からバージョンさせてほしい
978デフォルトの名無しさん (ワッチョイ 9749-QolP)
2022/12/21(水) 11:46:13.92ID:yXejyiRX0 まあ認証まわりとか、ライブラリを使ってるのか自作なのかすら見せたくないのはわかる
個人のアプリじゃないと重箱の隅をつつかれることにもなるしね
個人のアプリじゃないと重箱の隅をつつかれることにもなるしね
979デフォルトの名無しさん (テテンテンテン MMe6-w6Ef)
2022/12/21(水) 12:14:36.58ID:UGlVD7cdM カジュアルな解読対策なら既存の難読化で十分だし、ガチのクラッカー相手ならマシン語になった程度じゃ無駄だよ
980デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/21(水) 12:52:16.33ID:j8NGwdcp0 そもそもターゲットになるようなアプリを公開できる奴がこんなスレにいるのかと...
981デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/21(水) 14:51:10.30ID:Q7xHaIEVd native AOTはスピードアップの恩恵も大きい。
C++くらい速いコードになるし欲しいに決まってる
C++くらい速いコードになるし欲しいに決まってる
982デフォルトの名無しさん (アウアウウー Sa9f-bKpv)
2022/12/21(水) 15:00:09.00ID:xeZ9BjZLa ならんと思うよ
C++は最適化のやり方がえげつないし安全より速度に倒してるから
C++は最適化のやり方がえげつないし安全より速度に倒してるから
983デフォルトの名無しさん (ワッチョイ 0fa7-JDfe)
2022/12/21(水) 15:01:27.23ID:9NcjNPce0 最適化に関しては言語単位ではなくコンパイラ次第だけどな
984たすけて!!!!!1!!11!!1!!!1!!111 (ガックシ 0676-ZR1D)
2022/12/21(水) 15:04:48.89ID:PoVpFNoO6 C言語でボードゲームを作成する課題についてです。重力付き4目並べを最終的にコンピュータと対戦可能にするように、テンプレートのコードに穴埋めしていく課題です。
@横7x縦6の盤面を立てて使用A2人で対戦、以下の0~6のマスを交互に選択B縦横斜めいずれか4コマ並べれば勝ち。以下はテンプレートのコードです(長いので続きはGoogleドライブにも置いてます)、これらの空白部分の穴埋めが分かる方、どうか教えてくださいお願いします。元テンプレコード↓→ https://drive.google.com/file/d/1bTnbssantyf9dEV5DOugZuloiVUh7H3D/view?usp=share_link
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define YMAX 6 // 縦方向のマス目の数
#define XMAX 7 // 横方向のマス目の数
int board[XMAX][YMAX]; // 0:未着手 1:先手のコマ● 2:後手のコマ○
int num[XMAX]; // 各列に置かれているコマの数
int choice = 1; // 0:未選択
// 1:人間(先手●)対人間(後手〇)
// 2:人間(先手●)対コンピュータ(後手〇)
// 3:コンピュータ(先手●)対人間(後手〇)
int turn = 0; // 先手か後手かを判定するための着手数
void InitBoard(void);
void DispBoard(void);
int CheckFull(void);
int SetXpos(int);
int CheckBoard(int, int, int);
int ComputeXpos(int);
int SearchConnect(int, int);
int main(void)
{
int xpos; // 入力したコマの置き場所,またはコンピュータが探したコマの置き場所
int player; // 1:先手の手番 2:後手の手番
int win = 0; // 0:プレイ中 1:先手の勝ち 2:後手の勝ち 3:引き分け
int ans;
while (1)
{
srand((unsigned int)time(NULL)); // 乱数を使う場合のseedの初期化
長いので続きはGoogleドライブにあります→ https://drive.google.com/file/d/1bTnbssantyf9dEV5DOugZuloiVUh7H3D/view?usp=share_link
@横7x縦6の盤面を立てて使用A2人で対戦、以下の0~6のマスを交互に選択B縦横斜めいずれか4コマ並べれば勝ち。以下はテンプレートのコードです(長いので続きはGoogleドライブにも置いてます)、これらの空白部分の穴埋めが分かる方、どうか教えてくださいお願いします。元テンプレコード↓→ https://drive.google.com/file/d/1bTnbssantyf9dEV5DOugZuloiVUh7H3D/view?usp=share_link
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define YMAX 6 // 縦方向のマス目の数
#define XMAX 7 // 横方向のマス目の数
int board[XMAX][YMAX]; // 0:未着手 1:先手のコマ● 2:後手のコマ○
int num[XMAX]; // 各列に置かれているコマの数
int choice = 1; // 0:未選択
// 1:人間(先手●)対人間(後手〇)
// 2:人間(先手●)対コンピュータ(後手〇)
// 3:コンピュータ(先手●)対人間(後手〇)
int turn = 0; // 先手か後手かを判定するための着手数
void InitBoard(void);
void DispBoard(void);
int CheckFull(void);
int SetXpos(int);
int CheckBoard(int, int, int);
int ComputeXpos(int);
int SearchConnect(int, int);
int main(void)
{
int xpos; // 入力したコマの置き場所,またはコンピュータが探したコマの置き場所
int player; // 1:先手の手番 2:後手の手番
int win = 0; // 0:プレイ中 1:先手の勝ち 2:後手の勝ち 3:引き分け
int ans;
while (1)
{
srand((unsigned int)time(NULL)); // 乱数を使う場合のseedの初期化
長いので続きはGoogleドライブにあります→ https://drive.google.com/file/d/1bTnbssantyf9dEV5DOugZuloiVUh7H3D/view?usp=share_link
985デフォルトの名無しさん (スッップ Sd8a-JDfe)
2022/12/21(水) 15:06:36.41ID:Q7xHaIEVd986デフォルトの名無しさん (スッップ Sd8a-g3+u)
2022/12/21(水) 15:08:08.84ID:QEiYz8egd987デフォルトの名無しさん (ガックシ 0676-ZR1D)
2022/12/21(水) 15:46:41.58ID:PoVpFNoO6 >>986
ごめんち
ごめんち
988デフォルトの名無しさん (アウアウウー Sa9f-bKpv)
2022/12/21(水) 15:57:46.46ID:xnCwgzYya >>985
マシン語に夢見すぎだしCのソースコードにデコンパイルできるぞ
マシン語に夢見すぎだしCのソースコードにデコンパイルできるぞ
989デフォルトの名無しさん (ワッチョイ 6a01-6ae9)
2022/12/21(水) 16:15:55.40ID:j8NGwdcp0 まあガチで最適化されてたらまともなCコードにはならんけどね
990デフォルトの名無しさん (アウアウウー Sa9f-bKpv)
2022/12/21(水) 16:23:28.08ID:xnCwgzYya >>989
少なくとも文法はCになる
少なくとも文法はCになる
991デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/21(水) 20:14:45.78ID:RZVo2DHQM 文法はCだけど中身はマシン語と変わらないなら地獄だけどそういうものになるんだろ?
ifとgotoとreturnとラベルだらけ
ifとgotoとreturnとラベルだらけ
992デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/21(水) 20:17:20.13ID:RZVo2DHQM 式は漏れなく逆ポーランド記法的になるんだろうし
993デフォルトの名無しさん (ワッチョイ 535f-f2OJ)
2022/12/21(水) 20:23:34.31ID:rozOpZ0F0 自分でやってみればわかるが、言うほど難しくない。
994デフォルトの名無しさん (オイコラミネオ MM1b-e5AJ)
2022/12/21(水) 20:27:18.93ID:RZVo2DHQM と言う妄想
995デフォルトの名無しさん (ワッチョイ 3b01-ZR1D)
2022/12/21(水) 21:29:01.38ID:ye8WaQKn0 Cとアセンブラの最も大きな違いはレジスタへのアクセスなんだよね。
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 【対日戦略】中国とロシア、対日共闘で一致 「軍国主義復活に反撃」… ★3 [BFU★]
- 【話題】おでんの好きな具は?! 「だいこん」「たまご」「もち巾着」「ちくわぶ」「こんにゃく」「牛すじ」 [ひぃぃ★]
- 【社会】丸亀製麺12月24日は15時30分で閉店 従業員とその家族のため [あずささん★]
- 中国公演中止嘆くミュージシャン、批判的な声に「ここはいつの時代の日本なのだ?」「日本帝国時代の轍を踏まないようにしなくては」★2 [muffin★]
- 【芸能】『FNS歌謡祭』 平手友梨奈に視聴者ざわつく 「誰かわからん」「雰囲気全然違う」「今こんな感じなんだ」 [冬月記者★]
- 売買春は「性を買う側の尊厳も害される」…平口洋法務相… 東大法学部卒、元高級官僚議員の「素顔」とは [少考さん★]
- 【実況】博衣こよりのえちえち消えていくマリオカートワールド🧪★3
- 【実況】博衣こよりのえちえち消えていくマリオカートワールド🧪★2
- 【高市】国際協調よりも自国の利益を優先すべきだ、賛成70、反対27 [834922174]
- 相続人なき遺産、昨年度、最多の1291億円 10年余で3倍以上に 、国庫として税金へ [943688309]
- 【凋落】ニッサン、車が売れない!11月の国内販売台数が前年同月比39.6%減、、一体何が悪かったのか [219241683]
- 【すこん部🌽】白上フブキ🦊配信中やぞ❗🏡【ホロライブ▶】
