Ubuntu – How to fix compilation errors that mention “stray ‘\342’” and “stray ‘\200’”?

ccompiling

I wrote this program:

#include<stdio.h>
int main()
{
printf(“Hello World\n”);
return 0;
}

I saved it as first.c and tried to compile but receiving this problem I have installed even gcc compiler too.

$ gcc first.c -o first1
first.c: In function ‘main’:
first.c:4:1: error: stray ‘\342’ in program
first.c:4:1: error: stray ‘\200’ in program
first.c:4:1: error: stray ‘\234’ in program
first.c:4:11: error: ‘Hello’ undeclared (first use in this function)
first.c:4:11: note: each undeclared identifier is reported only once for each function 
it appears in
first.c:4:17: error: expected ‘)’ before ‘World’
first.c:4:17: error: stray ‘\’ in program
first.c:4:17: error: stray ‘\342’ in program
first.c:4:17: error: stray ‘\200’ in program
first.c:4:17: error: stray ‘\235’ in program

How can I fix this problem?

Best Answer

The problem is that you have Unicode quotation marks instead of ASCII quotation marks; probably your editor automatically changed them, or you copied the text from a site that does this automatically in its authoring software. Replace the quotes with normal ASCII quote (0x22, ") and it should work.

Fixed source:

#include <stdio.h>
int main()
{
    printf("Hello World\n");
    return 0;
}