c - 如何用字符串替换宏?

标签 c

#include <stdio.h>
#include <stdarg.h>
#define ammo "full"

int main()
{
  char a[100];
  a = ammo;
  printf("%s",a);
  return 0;
}

我正在尝试替换#define ammo"full" (字符串)并希望将其打印在屏幕上以检查其是否有效,但代码未编译。

最佳答案

代替a=弹药;你应该使用 strcpy(a,ammo);当有字符串时,不应使用直接赋值,而应使用 C 方法 strcpy 将字符串复制到另一个字符串。它会起作用的

关于c - 如何用字符串替换宏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45918982/

相关文章:

c - c 中的网格和指针

c - 顺序文件写入的 posix_fadvise() 参数是什么?

c - #define 宏用于 C 中的调试打印?

c - 给定一个带有原型(prototype)的 char*,我们可以将 void* 转换为函数指针吗?并运行它?

c - 查找最长的字符串名称和长度

c - 如何从c(Ubuntu)中的文件中逐行读取?

c - 段错误从函数返回字符串数组

c++ - 杆切割 - 递归

C 程序因大型数组而崩溃

c - 将结构指针作为函数参数传递(段错误未知)