wuta 发表于 2018-12-12 13:02:01

定义的宏常量怎么编译不了

// 1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "stdio.h"
#define NAME1 wo
#define NAME2 ttang
int main()
{
      flaot NAME1,NAME2;
      printf("Hello World!\n");
      printf("%slove%s",NAME1,NAME2);
      return 0;
}

jackz007 发表于 2018-12-12 13:39:04

    wo 和 ttang 事前没定义,属于非法标识符,用来替代这 2 个标识符的宏定义 NAME1、NAME2 便没有意义了。

Mountain_gs 发表于 2018-12-12 13:45:19

#define NAME1 "wo"
#define NAME2 "ttang"
再把“ flaot NAME1,NAME2;”删掉运行一下看看

wuta 发表于 2018-12-12 13:59:48

jackz007 发表于 2018-12-12 13:39
wo 和 ttang 事前没定义,属于非法标识符,用来替代这 2 个标识符的宏定义 NAME1、NAME2 便没有意义了 ...

哦哦,懂啦

wuta 发表于 2018-12-12 14:00:33

Mountain_gs 发表于 2018-12-12 13:45
#define NAME1 "wo"
#define NAME2 "ttang"
再把“ flaot NAME1,NAME2;”删掉运行一下看看

原来是这样

cc1003894 发表于 2018-12-12 14:22:02

宏定义字符串需要加 " "

刘邦 发表于 2018-12-12 15:52:53

float是浮点型wo和ttang是char类型即字符型
页: [1]
查看完整版本: 定义的宏常量怎么编译不了