arrays - 使用 C 从字符串数组中获取特定字符
问题描述
我有一个字符串数组,我想从中打印一个特定的字符:
char *Code[17]={"MAIN: add r3, LIST",
"LOOP: prn #48",
"lea STR, r6",
"inc r6",
"mov r3, K",
"sub r1, r4",
"bne END",
"cmp val1, #-6",
"bne %END",
"dec K",
"jmp %LOOP",
"END: stop",
"STR: .string “abcd”",
"LIST: .data 6, -9",
".data -100",
".entry K",
"K: .data 31"};
printf("%s",&Code[1][4]);
我要打印的字符是第二个字符串中的“ : ”(循环:prn #48)。
当我尝试使用printf("%s",&Code[1][4]);打印时 我得到的是“ :prn #48 ”
我想单独打印字符“ : ”所以我也尝试使用 %c 进行打印并收到以下警告:
警告:格式“%c”需要“int”类型的参数,但参数 2 的类型为“char *”
如何从数组中的特定字符串中获取特定字符?
另外,为什么我会收到 %c 需要 int 类型的警告?%c 不是用于打印和扫描一个字符吗?
解决方案
printf("%s",&Code[1][4]);
打印从 开始的 C 字符串&Code[1][4]
。
printf("%c",Code[1][4]);
打印字符Code[1][4]
(来自 address &Code[1][4]
,但这与%c
需要传递的字符无关,而不是其地址)。
推荐阅读
- c# - 使用 Windows 服务启动应用程序或批处理文件
- sql-server - SMO 仅对数据库及其设置编写脚本(而不是其中的对象)
- python - 如何根据逻辑创建布尔系列:(0 后接 1 为真。1 前接 0 为真。其他均为假)
- swift - 如何在 SwiftUI WKWebView 中实现 WKUIDelegate?
- wordpress - 获取存储在 DB 中的转发器子字段的所有值
- ruby-on-rails - Rails 中的多个默认 URL 值?
- azure - “字符串”类型的表达式与 ADFv2 中 If 条件上的字段“表达式”不匹配
- flutter - 当我使用具有自动对焦的文本字段时,Flutter 会引发错误
- php - PHP 'For Each' 将行从数组或字符串插入 mysql
- android - 如何将“com.unity3d.player.UnityPlayer”导入我的 Android 库?