我试图检查并输出从终端调用特定程序“format.c”时给出的命令行参数。我收到以下错误,我不明白它告诉我的是什么。 错误: format指定类型'char *'但是 参数的类型为'char'[-Wformat] 这是我到目前为止的代码:
import numpy as np
import tensorflow as tf
targets = np.array([[.1,.2,.3],[.3,.2,.1],[.5,.3,.5],[.5,.5,.5],[.6,.8,.9]])
guesses = np.array([[.5,.5,.5],[.3,.3,.4],[.5,.6,.4]])
targets = tf.reshape(targets,(5, 1, 3))
goal = tf.reduce_min(tf.reduce_sum(tf.square(targets - guesses), 2), 0)
sess = tf.Session()
o = sess.run(goal)
print o
答案 0 :(得分:0)
由于argv[i]
的类型为*argv[i]
,您应该在printf
中将printArguments
而不是argv
传递给char **
。因此argv[i]
的类型为char *
,而*argv[i]
的类型为char
。 %s
的{{1}}说明符需要printf
参数。
出于同样的原因,您还应该将char *
作为参数传递给argv
,而不是printArguments
。您希望传递整个参数列表,而不是指向第一个参数的第一个字符的指针。我很惊讶你也没有收到警告。