我有一個非常簡單的程序來打印字符的字符串,但由於某種原因,它不工作:打印字符串中的所有字符用C
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void * print_chars(char *process_string) {
int i;
int string_len;
string_len = strlen(process_string);
printf("String is %s, and its length is %d", process_string, string_len);
for(i = 0; i < string_len; i++) {
printf(process_string[i]);
}
printf("\n");
}
int main(void) {
char *process_string;
process_string = "This is the parent process.";
print_chars(process_string);
return 0;
}
當我在Netbeans中運行它,我得到的以下:
RUN FAILED (exit value 1, total time: 98ms)
如果我刪除線
printf(process_string[i]);
程序運行,但沒有打印到控制檯(明顯)。
任何想法我在這裏失蹤?
通過將C++標記放在那裏,當有人告訴你只使用'std :: string'和'std :: string :: length'時,你應該接受它。 – chris
您是否正在關注您嘗試編譯時得到的警告? – antlersoft
爲什麼你的'print_chars'函數返回一個'void *'?並打印字符串,使用'printf(「%s」,process_string);' – Praetorian