标题: [问题求助] 求改写PowerShell的while语句 [打印本页]
作者: 小白龙 时间: 2023-4-4 11:42 标题: 求改写PowerShell的while语句
我想将下面的C++语句改成powershell循环语句, 求路过大佬指导, 多谢
对 ++iLineNumCount 这行不太懂, 怎样改成通俗一些的形式- long iLineNum
- long iLineNumCount=1
- while(iLineNum != 0)
- {
- ++iLineNumCount
- iLineNum /= 10
- }
复制代码
作者: jyswjjgdwtdtj 时间: 2023-4-4 12:43
ps有自增吧 网上一搜就有啊
作者: 小白龙 时间: 2023-4-4 13:24
回复 3# jyswjjgdwtdtj
感谢关注,
自增不太懂, 后面又有一个 /= 直接晕了
期待路过的高手, 改一个更通俗易懂的写法
作者: jyswjjgdwtdtj 时间: 2023-4-4 14:34
回复 4# 小白龙 - 以js为例吧(其他的大差不差)
- [x++] = [++x] = [x=x+1]
- [x--] = [--x] = [x=x-1]
- [y=x++] = [x=x+1;y=x]
- [y=++x]=[y=x;x=x+1]
复制代码
作者: jyswjjgdwtdtj 时间: 2023-4-5 07:09
回复 4# 小白龙
x+=y即x=x+y
x-=y即x=x-y
x/=y即x=x/y
x*=y即x=x*y
作者: 小白龙 时间: 2023-4-5 19:52
本帖最后由 小白龙 于 2023-4-5 20:13 编辑
回复 5# jyswjjgdwtdtj
最上面的语句, 我理解起来确实有点难度, 现在还是看不懂
求路过大佬, 分解一下
完整代码如下:
它主要的作用是控制一些文本编辑器左侧的 行号栏 的宽度, 例如 只有1行文本时, 就是1个数字的宽度, 当有大于9行文本时, 就是两个数字的宽度, 当有大于99行文本时, 就是3个数字的宽度,以此类推
效果如下图
- void UpdateLineNumberWidth(void)
- {
- //start 显示行号
- long iLineMarginWidthNow;
- long iLineMarginWidthFit;
- long iLineNum = SendMessage( SCI_GETLINECOUNT, 0, 0 );
- long iLineNumCount = 1;
- while( iLineNum != 0 )
- {
- ++iLineNumCount;
- iLineNum /= 10;
- }
- iLineMarginWidthNow = SendMessage( SCI_GETMARGINWIDTHN, 0, 0 );
- long charWidth = SendMessage( SCI_TEXTWIDTH, STYLE_LINENUMBER, (LPARAM)("9") );
- iLineMarginWidthFit = charWidth * iLineNumCount;
- if ( iLineMarginWidthNow != iLineMarginWidthFit )
- {
- SendMessage( SCI_SETMARGINWIDTHN, 0, iLineMarginWidthFit );
- }
- //end of 显示行号
- }
复制代码
作者: jyswjjgdwtdtj 时间: 2023-4-5 21:12
回复 6# 小白龙
不是 这怎么会有难度呢?
作者: jyswjjgdwtdtj 时间: 2023-4-5 21:15
那我帮你改一下吧
while(true){
if(iLineNum==0){
break;
}
iLineNumCount=iLineNumCount+1;
iLineNum=iLineNum/10
}
这要是还看不懂那么我也没办法了
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |