小编Sha*_*yan的帖子

获取数字的小数部分

试图将数字的整数部分和小数部分分成两个变量。我试过的:

#include <iostream>
int main(){
    float n,m; int k; std::cin >> n;
    k = n;
    m = n - k;
Run Code Online (Sandbox Code Playgroud)

试图将浮点数转换为 int 并收到编译器警告,该数字可能不正确,经过测试,确实不正确并且无法获得预期结果。对此进行了搜索,除了使用floor().

我的实际代码:

int main() {
    float n; cin >> n;
    int nfloor = n;
    cout << nfloor << "\n";
    float nfloat = n - nfloor; int nfloatfloor;
    cout << nfloat << "\n";
    do {
        nfloat *= 10;
        nfloatfloor = nfloat;
        cout << nfloat << "\n" << nfloatfloor << "\n";
    } while (nfloat > nfloatfloor);
}
Run Code Online (Sandbox Code Playgroud)

结果: …

c++

7
推荐指数
2
解决办法
2万
查看次数

将setw()作为变量

我有这个示例代码块:

#include <iostream>
#include <iomanip>
#include <string>
using namespace std;

int main(){
    string blank = " ";
    cout << "Hello" << blank << "47"; 
}
Run Code Online (Sandbox Code Playgroud)

我的原始代码中有很多此类型的cout.我希望能够将空白字符串更改为setw(2)函数,而无需在我的代码中的每个cout上用setw(2)替换空白.那么有没有办法将cpp函数设置为变量?所以我可以通过输入名称来调用该函数?例如:

func blank = setw(2);
cout<< "Hello" << blank << "47";
Run Code Online (Sandbox Code Playgroud)

c++

2
推荐指数
1
解决办法
663
查看次数

Excel 中 Application.ActiveSheet 的所有属性 - 对象浏览器未列出成员的属性

Microsoft Docs 未列出 Object 的所有属性Application.ActiveSheethttps : //docs.microsoft.com/en-us/office/vba/api/excel.application.activesheet

它只包含了一些属性,例如:ActiveSheet.Name。但是从我在互联网上找到的 VBA 脚本中,我知道还有更多的属性,例如:ActiveSheet.Type

所以我想也许我可以用这个 VBA 代码列出它们:来自:VBA 集合:键列表

Sub AktivSheet()
Dim key As Variant
For Each key In Application.ActiveSheet
    Debug.Print "Key: " & key, "Value: " & Application.ActiveSheet.Item(key)
Next
End Sub
Run Code Online (Sandbox Code Playgroud)

但它不起作用,Microsoft Docs 建议使用对象浏览器。但是对象浏览器没有列出 Application.ActiveSheet 的属性:

ActiveSheet 对象浏览器

我没主意了!我只想要所有 ActiveSheet 属性的列表。因为我只需要知道活动工作表的文本方向,就好像它是从左到右或从右到左一样。

excel vba object objectbrowser

1
推荐指数
1
解决办法
271
查看次数

更改if范围内变量的类型

#include <iostream>
int main(){
    for (int i = 1; i <=5; i++){
    if (i == 3)
        char i[3] = "abc";
    std::cout << i << "\n";
    }
}
Run Code Online (Sandbox Code Playgroud)

输出:

1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)

所以问题是char i[3]只在if内部进行限定,如果我cout在if语句中尝试它将"abc"按预期打印,但在if语句之外它不起作用,我可以将其称为好像它不粘.所以我怎么能声明它所以它在if语句之外工作,我不想在if语句中添加一个cout内容而且我不想cout在for循环中更改,因为在我的实际程序中我正在打印一个表.


更新:这是我的实际代码:

#include <iostream>
#include <iomanip>
#include <cmath>
#define pi 3.14159265359

double d2r(int deg) {
    double rad = (pi * deg) / 180;
    return rad;
}

int main() {
    int sw = 2;
    cout << …
Run Code Online (Sandbox Code Playgroud)

c++

0
推荐指数
1
解决办法
93
查看次数

标签 统计

c++ ×3

excel ×1

object ×1

objectbrowser ×1

vba ×1