c - 打印c字符串指针

标签 c string

我在打印/显示 char *string 时遇到问题

这是我的字符串

    char *messageForServer = ("netsvr type0 dobrien %s- %s",inet_ntoa(clientAddr.sin_addr),port);

当我去打印它时

printf("%s\n",messageForServer);

它只会打印字符串的port部分。 如果有任何帮助,我将不胜感激,因为它困扰了我几个小时,而且似乎找不到答案

最佳答案

你应该这样做:

char messageForServer[100];
sprintf(messageForServer, "netsvr type0 dobrien %s- %s", "something", "8080");
printf("%s\n", messageForServer);

UPD:打印以下内容

netsvr type0 dobrien something- 8080

您的代码不起作用的原因是 - 好吧,您尝试获取格式化字符串的方式与 C 中的字符串格式化无关。请参阅 Creating C formatted strings (not printing them)了解更多信息。

关于c - 打印c字符串指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26981048/

相关文章:

c - memset(&mystruct, 0, sizeof mystruct) 和 mystruct = { 0 }; 一样吗?

在 RStudio 中调用 C 导致崩溃

c - 如何打印指向指针的指针

javascript - 如何获取 var 中的字符串作为 javascript/node 中的 obj 键?

c - 从 C 中的字符串中提取整数

c++ - 在 C++ 中调整字符串大小是危险的

java - 通过其他方式分割字符串

java - 在C中使用私钥加密数据,在Java中使用公钥解密数据

java - 检查java字符串是否包含unicode字符

c - 关于 C 中的冒泡排序