喵宅苑 MewoGarden × 技术宅社区II | Z站 Z Station 棒棒哒纯文字二次元技术社区

正文

技术问答

作者:系统
{"name":"技术问答","sizeType":1,"icon":"","order":9999}

回复

求助求助,关于gameboard

作者:椎蓠
求助一下 我现在在制作一个游戏,是一个8*8的棋盘 然后我用clickonboard让它实现我在棋盘上的某一格点一下,CMD里就会显示我点的是哪行哪列 那我需要在我点的地方留下一个红色圈圈,应该怎么做呢? 这是部分代码: def rowColumnConversion(x,y): print('Row:', math.ceil(y*10), 'Column:', math.floor(x*10+1)) def player_1(x, y): texturtle.goto(x,y) def player_2(x, y): texturtle.goto(x,y) def gameplay(INITX, INITY, CELLDIM, GRIDTEXT, texturtle, Game): #这是画红圈圈的function Game.shape("circle") Game.shapesize(1,1) Game.color("red")
查看回复

求推荐

作者:星瞳月眸
本人是计算机专业的新生,感觉除了数据库适合本人外,编程什么的太复杂了,不是道各位高手能不能推荐几本数据库学习方面有用的书籍,或者讲一讲你们学习编代码时的经验也好,谢谢了
查看回复

求助_(:з」∠)_关于简问题单的计算器的连续运算

作者:纯净物
现在的状况就是可以简单运算,但是连续那种,比如1+3-2这种就不行,只能实现两位数的四则运算_(:з」∠)_是需要创建个变量来存储sum1 的值么?还是怎么OJZ 求帮助…… using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace calculator { public partial class Form1 : Form { public Form1() { InitializeComponent(); } bool operatorFlag = false; public void InputNumber(string number1) { if (tBanswer.Text == "0") { tBanswer.Text = ""; } tBanswer.Text = tBanswer.Text + number1; } private void Form1_Load(object sender, EventArgs e) { } private void bonDec_Click(object sender, EventArgs e) { if (tBanswer.Text.IndexOf(".") == -1) InputNumber("."); } private void bon00_Click(object sender, EventArgs e) { InputNumber("0"); } private void bon01_Click(object sender, EventArgs e) { InputNumber("1"); } private void bon02_Click(object sender, EventArgs e) { InputNumber("2"); } private void bon03_Click(object sender, EventArgs e) { InputNumber("3"); } private void bon04_Click(object sender, EventArgs e) { InputNumber("4"); } private void bon05_Click(object sender, EventArgs e) { InputNumber("5"); } private void bon06_Click(object sender, EventArgs e) { InputNumber("6"); } private void bon07_Click(object sender, EventArgs e) { InputNumber("7"); } private void bon08_Click(object sender, EventArgs e) { InputNumber("8"); } private void bon09_Click(object sender, EventArgs e) { InputNumber("9"); } public static string numbersaved; public static string signsaved; public void SaveInputed(string num1, string sign1) { if (num1 == "0" | num1 == "") return; numbersaved = num1; signsaved = sign1; tBanswer.Text = "0"; } private void bonAdd_Click(object sender, EventArgs e) { SaveInputed(tBanswer.Text, "加"); } private void bonSub_Click(object sender, EventArgs e) { SaveInputed(tBanswer.Text, "减"); } private void bonMul_Click(object sender, EventArgs e) { SaveInputed(tBanswer.Text, "乘"); } private void bonDiv_Click(object sender, EventArgs e) { SaveInputed(tBanswer.Text, "除"); } private void bonEqula_Click(object sender, EventArgs e) { string numbernow = tBanswer.Text; if (signsaved == "" | numbersaved == "" | numbernow == "" | numbernow == "0") return; tBanswer.Text = Calcuration(numbersaved, signsaved, numbernow); signsaved = ""; numbersaved = ""; } public string Calcuration(string num1, string sign1, string num2) { float number1, number2, sum1 = 0, result=0; try { number1 = (float)(Double.Parse(num1)); number2 = (float)(Double.Parse(num2)); if (sign1 == "加") { sum1 = number1 + number2; } if (sign1 == "减") { sum1 = number1 - number2; } if (sign1 == "乘") { sum1 = number1 * number2; } if (sign1 == "除") { sum1 = number1 / number2; } return result.ToString(); } catch { return ""; } } private void bonC_Click(object sender, EventArgs e) { tBanswer.Text = "0"; numbersaved = ""; signsaved = ""; } } }
查看回复

关于recv()函数的疑问

作者:樱花流逝
在网上查了一下,关于recv()的解释大致是这样的:

int recv( SOCKET s, char FAR *buf, int len, int flags );

不论是客户端还是服务器端应用程序都用recv函数从TCP连接的另一端接收数据。

该函数的:

第一个参数指定接收端套接字描述符;

第二个参数指明一个缓冲区,该缓冲区用来存放recv函数接收到的数据;

第三个参数指明buf的长度;

第四个参数一般置0。

这里只描述同步Socket的recv函数的执行流程。当应用程序调用recv函数时,recv先等待s的发送缓冲 中的数据被协议传送完毕,如果协议在传送s的发送缓冲中的数据时出现网络错误,那么recv函数返回SOCKET_ERROR,如果s的发送缓冲中没有数 据或者数据被协议成功发送完毕后,recv先检查套接字s的接收缓冲区,如果s接收缓冲区中没有数据或者协议正在接收数据,那么recv就一直等待,只到 协议把数据接收完毕。当协议把数据接收完毕,recv函数就把s的接收缓冲中的数据copy到buf中(注意协议接收到的数据可能大于buf的长度,所以 在这种情况下要调用几次recv函数才能把s的接收缓冲中的数据copy完。recv函数仅仅是copy数据,真正的接收数据是协议来完成的),recv函数返回其实际copy的字节数。如果recv在copy时出错,那么它返回SOCKET_ERROR;如果recv函数在等待协议接收数据时网络中断了,那么它返回0。

但是这里只提到了接受缓冲区的数据大于buf的长度的情况,那如果接受缓冲区的数据比buf的长度短会怎样?是直接返回还是一直等待直到buf被填满?

查看回复

有木有嵌入式大神~~

作者:Just-Diver
小弟刚上班俩月,入行嵌入式,正在制作U-Boot命令,对于设计软件的思路还不是很顺畅,经常会漏掉需要考虑的东西,能不能请求帮助,指导指导。。。
查看回复

计算机导论用书,求资源。。。

作者:梦枭游
计算机专业的,不过是“小白”,跪求课外辅导书。。。
查看回复

新手求助,关于一个switch的跳出问题

作者:阳光闪闪
[i=s] 本帖最后由 阳光闪闪 于 2015-7-31 10:26 编辑 c primer plus 第七章第11道习题,用的是DEV c++, 我写出来后每次进入switch不管跳到哪个case最后都会强行走一遍default再转下一个循环。。。,试过把continue换成break还是依然跳不过这个default,公司写代码的同事都搞不定。。。求大神指教我问题出在哪里TAT int main(void) { char choice,choice2; int artichoke, beet, carrot, buy, tart, tbee, tcar,allmess; float allprice,fprice,tprice; tart = tbee = tcar = 0; printf("Please choose the product you want to buy:(q to quit,y to count)\n"); printf("a) artichoke b) beet c) carrot \n"); first:while((choice=getchar()) != 'q') { switch(choice) { case 'a': printf("How many pounds do you want to buy: \n"); scanf("%d", &buy); tart += buy; continue; case 'b': printf("How many pounds beet do you want to buy: \n"); scanf("%d", &buy); tbee += buy; continue; case 'c': printf("How many pounds carrot do you want to buy: \n"); scanf("%d", &buy); tcar += buy; continue; default: printf("You have enter the wrong number, please enter a, b, c, y or q. \n"); goto first; } printf("Do you want to buy more?\n"); goto first; } printf("Thank you!"); over:return 0; }
查看回复

进来秀一秀你们都用的什么笔记本?

作者:CODE_-_V
我是一个学计算机的即将大二生,准备买一个新的笔记本电脑#26x,想看看大家都用的什么做一个参考~·~~~ 谢谢~~~#31t
查看回复
上一页
下一页
0%
站点地图友情链接:
喵宅苑
喵空间社区程序
喵宅苑 静态版
宅喵RPG地图编辑器
络合兔
Lanzainc
技术宅
小五四博客
莉可POI
Mithril.js
枫の主题社
Project1
午后少年
机智库
七濑胡桃
xiuno
幻想の日常
魂研社
Nothentai
0xffff
欲望之花
泽泽社长
淀粉月刊
HAYOU