小编eye*_*lls的帖子

如何在C预处理器中使用'##'添加Integer?

#include<stdio.h>

#define DEF6 625
#define DEF6 625
#define DEF(n) DEF##n

void main(){
    printf("%d\n", DEF(6));
}
Run Code Online (Sandbox Code Playgroud)

这段代码有效.但

#include<stdio.h>

#define DEF6 625
#define DEF(n) DEF##n

void main(){
    int a=6;
    printf("%d\n", DEF(a));
}
Run Code Online (Sandbox Code Playgroud)

此代码不起作用.错误结果是这样的

第8行:错误:'DEFa'未声明(在此函数中首次使用)
第8行:错误:(每个未声明的标识符仅报告一次
第8行:错误:对于它出现的每个函数.)

那么如何将Integer类型变量添加到#define使用中##呢?

c stringification c-preprocessor

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

java.lang.NumberFormatException:对于输入字符串:“ 1”

“ out.txt”的内容是

1个

我的JAVA代码是这样的。

    int val=0;
    BufferedReader br = new BufferedReader(new FileReader("out.txt"));

    while(true) {
        String line = br.readLine();
        if (line==null) break;
        val=Integer.parseInt(line);
    }
    br.close();
Run Code Online (Sandbox Code Playgroud)

调试器说,

java.lang.NumberFormatException:对于输入字符串:“?1”

我需要使用“ out.txt”中的1。如何使用1作为整数?感谢您的关注 :)

java numberformatexception

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